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.8python 无论是64位还是32位都会显示 on win32

Anaconda Prompt 中分别执行如下命令在家目录生成名为.condarc的配置文件:

conda config
conda config --set show_channel_urls yes

此外要确保家目录下的 .condarc 文件内容如下,否则 anaconda 可能不会下载 win32python 版本,记得全部步骤完成后两个网址去掉 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\kernelsuser_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

  • 3
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值