碧海苍梧
2023/01/23阅读:56主题:默认主题
Anaconda中配置运行arcpy的python环境
最开始 ArcGIS 10 中引入了 ArcPy,这是一个 Python 站点包,其中包含了各种方法,可以使用 Python 语言进行调用。ArcGIS 10.x 版本默认使用的是 Python 2,并且不同版本对 Python 的封装程度不同,如 ArcGIS 10.3 中的 Python 不自带 pip
,而 ArcGIS 10.8 不仅自带 pip
,而且还多了诸如 pandas
等第三方库。如果我们要在 ArcGIS 自带的 Python 环境下安装第三方库,那么势必会导致原有环境发生改变,容易发生错误。因此,本文介绍了如何在 Anaconda 或 Miniconda 下配置运行arcpy
的 Python 环境,这样该环境既能使用arcpy
,又能方便的安装第三方库而不用担心出现问题。本文仅供参考。学习更多Python & GIS的相关知识,请移步公众号GeodataAnalysis
。
1 创建虚拟环境
首先,在ArcGIS的安装目录下打开IDLE。由 Python 2.7.8 [MSC v.1500 32 bit (Intel)]
看出,我的 python
版本为32位的 python2.7.8
, python
无论是64位还是32位都会显示 on win32
。

在 Anaconda Prompt
中分别执行如下命令在家目录生成名为.condarc的配置文件:
conda config
conda config --set show_channel_urls yes
此外要确保家目录下的 .condarc
文件内容如下,否则 anaconda
可能不会下载 win32
的 python
版本,记得全部步骤完成后两个网址去掉 win-32/
,否则以后 Anaconda
都会从这个目录下载。
ssl_verify: true
channels:
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/win-32/
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/win-32/
show_channel_urls: true
而后执行新建虚拟环境命令( env_name
是虚拟环境的名字,可以自己设置):
conda create --name env_name python=2.7.8
2 配置 jupyter notebook
运行环境
0 激活虚拟环境(env_name
是刚才新建的环境名称,下同):
conda activate env_name
1) 在虚拟环境中安装ipykernel:
conda install ipykernel
2) 连接虚拟环境到Jupyter Kernel:
在 C:\Users\user_name\AppData\Roaming\jupyter\kernels
(user_name
是你的电脑主机的用户名)下新建 env_name
文件夹,其中包括三个文件如下图所示:

kernel.json
内容为:
{
"display_name": "display_name",
"language": "python",
"argv": [
"Anaconda安装路径\\envs\\env_name\\python.exe",
"-m",
"ipykernel_launcher",
"-f",
"{connection_file}"
]
}
另外两个图片均为:

3) 重装 ipykernel
对应的 kernel
版本:
conda install tornado=4.5
4) 测试 jupyter
能否连上虚拟环境:
在 jupyter notebook
中新建一个连接到此虚拟环境的 .ipynb
文件,打开该文件,若连接服务成功,则说明虚拟环境设置好了。
3 配置 arcpy
环境
安装 pywin32
:
conda install pywin32
在Anaconda安装路径\envs\env_name\Lib\site-packages
下找到名为 pywin32.pth
的文件,添加如下内容:
ArcGis安装路径\Desktop10.3\bin
ArcGis安装路径\Desktop10.3\arcpy
ArcGis安装路径\Desktop10.3\ArcToolbox\Scripts
4 测试
在 jupyter
中新建虚拟环境env_name
的 .ipynb
文件,键入 import arcpy
,运行,若不出现 ImportError: No module named arcpy
错误,则说明虚拟环境配置成功。
此外, arcpy
还需要其他的包,如 numpy
等,若 import arcpy
时出现 ImportError: No module named numpy
错误,可用 pip install numpy
安装 numpy
。
5 其他问题
如果在执行 import arcpy
时出现如下错误:
ImportError:
Importing the multiarray numpy extension module failed. Most
likely you are trying to import a failed build of numpy.
If you're working with a numpy git repo, try `git clean -xdf` (removes all
files not under version control). Otherwise reinstall numpy.
Original error was: DLL load failed: %1 不是有效的 Win32 应用程序。
则分别执行:
pip uninstall numpy
pip install numpy
作者介绍