本地化环境下ArcGIS Python API中的SSL及locale的bug修复过程

124 篇文章 281 订阅
本地化环境下ArcGIS Python API中的SSL及locale的bug修复过程


进来试用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 ,问题解决:


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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

虾神说D

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值