ArcGIS API for Python开发环境配置
因为学习需要,尝试使用Pyhton API,但在使用过程中踩雷不少,特立贴记录。
主要参考教程:
- 前言
- Python安装
- Anaconda安装
- ArcGIS API开发环境配置
- 测试
1.前言
之前刚接触Python API的时候,最想解决的问题是Python语法的问题。花了一定时间看了Pyhton的基础。但从目前体验来讲,不需要很深的Python了解,也可以较为舒服地使用API,不过当然存在对于某些开发包的不熟练,可以边学边用。个人感觉在开始使用ArcGIS API for Python之前,更多需要GIS开发的经验,特别是对于ArcGIS Online的生态了解。所以学习使用前,你应该已经了解如下相关知识:
- Python究极基础语法
- GIS开发常识或经验
- ArcGIS产品生态(加分项)
官网教程给了三种配置环境的方法,个人推荐使用Anaconda或者PIP安装的方法,简单、无脑。基本所有安装步骤都可以“下一步”,网上有关于需要添加python环境变量,自己在配置中应该是没有遇到过的,如果有也欢迎大家补充。
2.python安装
在官网下载Python安装包,解压安装即可。根据自己需要的需要,选择合适的安装包就好,操作系统、位数、版本。我这边用的是win、64位、3.7.7。推荐3.7以上的版本。
X86——32位,X86-64——64位
安装成功后,进入cmd,输入“python”之后回车,出现版本号及相关信息即安装成功。
3.Anaconda安装
因为自己之前并未接触过Python使用、生产,所以对于Anaconda了解有限。Anaconda可以看做一个Python开发包管理工具,我们将要使用的ArcGIS API也是被封装整理成一个名为“arcgis”的开发包供我们使用。所以推荐使用Anaconda对于不同的开发环境(不同的特定的Python版本)进行开发包的管理。
首先在官网下载并解压安装,注意选择与上一步Python对应的版本即可。
安装过程全程下一步,只有在添加环境变量的时候需要注意一下:
选择第一个。(图源见水印)
安装成功后,进入其自带的PowerShell,
输入如下代码,检验安装是否成功
conda -V
出现版本号即安装成功。
4.ArcGIS API开发环境配置
如上Anaconda是一个现下十分流行的,集成诸多功能强大的Python开发包管理平台。对于ArcGIS API开发,我们可能只使用其中极少数开发包如arcgis、pandas、os等。所以如果有其他Python使用需求的话,强烈建议在conda中创建、使用不同的开发环境,因为我自己不涉及其他的用途,所以我是按照官网教程在默认的环境中进行API配置的。
关于Anaconda虚拟环境的用法及常用命令,欢迎参考我之前的笔记存档:
在默认的环境下配置ArcGIS API的开发环境比较简单,在Anaconda Powershell Prompt中键入如下代码:
conda install -c esri arcgis
系统找到对应安装资源检查环境后,再次键入“y”确认,如无意外,安装完成。可能出现部分开发包因为网络问题无法下载的情况:
可多次重复上述操作,或者尝试更换镜像源。键入如下代码后再次尝试:
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/msys2/
仍无法安装,可以尝试采用pip安装:
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple arcgis #pip安装清华镜像
安装完成后键入如下代码,检查是否安装成功:
conda list#查看已安装开发包
目录当中有arcgis安装包,安装成功√
至此ArcGIS API for Python的开发环境配置完毕,之后进行一个简单的Demo测试。
5.测试
在开始菜单栏中,Anaconda的安装列表中启动自带的Jupyter Notebook,浏览器中访问提供的URL。
'New'-->'Python 3'新建py文件
键入如下代码,出现地图,则大功告成√
from arcgis.gis import GIS
my_gis = GIS()
m = my_gis.map()
m
最后,欢迎大家关注我的博客:阿喵一定行。期待与大家共同交流进步。