缘起:
Arcgis的CAD工具上线后,使用的时候会检查python环境自动安装ezdxf==0.8.8,最近出现了几个自动安装失败的情况。
随即让使用python包管理工具,自动安装ezdxf,显示出更多的信息:

发现ArcGIS10.2中pip版本正常安装了20.3.4版本,但有一个pyparsing1.5.7版本,导致无法正常安装ezdxf。
通过环境工具卸载pyparsing,不行,升级也不行。
尝试用cmd命令也不行

反馈在GIS10.2版本,也有GIS10.3的,估计pyparsing1.5.7 旧版本是非pip安装的,pip无法安全的卸载或者升级,
所以里有跳过原版本,直接安装新版本
解决办法:
cmd里运行pip安装命令:
需修改python.exe的路径,确保已经安装有pip
使用了阿里云镜像
C:\Python27\ArcGIS10.2\python.exe -m pip install --ignore-installed pyparsing==2.4.7 -i http://mirrors.aliyun.com/pypi/simple/ --trusted-host mirrors.aliyun.com
今天又有人反馈有这个问题,所以对GIS导出CAD工具的代码做了一个升级
安装ezdxf前检查pyparsing版本,如果有1.5.7自动升级为2.4.7
python
import os
def install_ezdxf():
global ezdxf
try:
import ezdxf
print("> ezdxf检查..已安装")
except ImportError:
pip_exe = pip_setup()#检查并获取pip.exe的路径,可以手动输入
addm("> 安装 ezdxf..." )
try:
import pyparsing
if pyparsing.__version__ == '1.5.7':
print("> 升级pyparsing至2.4.7...")
cmd= '%s -m pip install --ignore-installed pyparsing==2.4.7 -i http://mirrors.aliyun.com/pypi/simple/ --trusted-host mirrors.aliyun.com'% (pip_exe)
result = os.popen(cmd).read()
print(result)
except ImportError:
pass
cmd = '%s install ezdxf==0.8.8 -i http://mirrors.aliyun.com/pypi/simple/ --trusted-host mirrors.aliyun.com' % (pip_exe)
result = os.popen(cmd).read()
print(result)
import ezdxf
globals()['ezdxf'] = ezdxf
如果你对这个工具感兴趣,可以联系我