进来试用ArcGIS Pro和对应的ArcGIS Python API,遇见各种问题……新产品还是不成熟啊,特别是官方中文版还没有出来的时候,各种本地问题话噌噌噌的乱冒,今天又遇见两ArcGIS Python API的……
如果有人要问啥是ArcGIS Python API,就一句话:用Python来控制ArcGIS Online / Portal for ArcGIS的东东……利用Python中的Juypter实现各种展示和分析。
两个bug及修复的过程如下:
1、SSL的Bug 加载自签名证书创建的Portal的时候,会报[SSL: CERTIFICATE_VERIFY_FAILED]错误,这是因为2.7.9之后Python的一个安全新特性。 修改方法: 在ArcGIS Python API安装的目录下,修改主文件gis.py文件,在头部加入下面这两句话: 我的路径是:D:\Program Files\ArcGIS\Pro\bin\Python\envs\arcgispro-py3\lib\site-packages\arcgis import ssl ssl._create_default_https_context = ssl._create_unverified_context 如下图: 对自签名证书不进行认证,这样就可以了: 重启jupyter之后,问题排除: 2、显示自己portal里面的item的时候,会因为中文操作系统,出现读取日期格式不正确的问题,如下所示:
这个问题是ArcGIS 的Python 3.5之后经常出现的,设置国际化的时候,代码里面有些地方写死了,有些地方读取系统的默认语言设置,所以会出现错误,修改方式如下:
与昨天排除Pandas的方式一样……只不过今天这个文件写入的地方不同,如果用一样的修改话的话,是行不通观点。
在ArcGIS Python API安装的目录下,修改主文件gis.py文件,找到:2788行,修改如下: 我的路径是:D:\Program Files\ArcGIS\Pro\bin\Python\envs\arcgispro-py3\lib\site-packages\arcgis locale.setlocale(locale.LC_ALL, 'en')
重启jupyter ,问题解决: