尝试通过子进程运行ogr2ogr时出错,但我只能使用windows命令提示符运行它。该脚本将是一系列进程的一部分,这些进程以批量导入gpx文件到postgres db开始。有人可以告诉我有什么问题吗?谢谢!
:::::::::::::::::::::::::::: 运行此脚本会给我一个错误:'ogr2ogr'不被识别为内部或外部命令,可操作程序或批处理文件。
导入子流程
导入sys
print sys.executable
track =“20131007.gpx”
subprocess.call([“ogr2ogr”,“ - f”,“PostgreSQL”,“PG:dbname = TTBASEMain host = localhost port = 5432 user = postgres password = minda”,track],shell = True)
::::::::::::::::::::::::::::: 这个代码做得很好。
ogr2ogr -f PostgreSQL PG:“dbname ='TTBASEMain'host ='localhost'port ='5432'user ='postgres'password ='minda'”“20131007.gpx”
::::::::::::::::::::::::::::: 这就是我在环境路径中所拥有的:
C:\用户\使用者>路径 PATH = C:\ Program Files(x86)\ Intel \ iCLS Client \; C:\ Program Files \ Intel \ iCLS Client \; C:\ Program Files(x86)\ NVIDIA Corporation \ PhysX \ Common; C:\ windows \ system32; C:\ windows; C:\ windows \ System32 \ Wbem; C:\ windows \ System32 \ WindowsPowerShell \ v1.0 \; C:\ Program Files(x86)\ Intel \ OpenCL SDK \ 3.0 \ bin \ x86; C:\ Program Files(x86)\ Intel \ OpenCL SDK \ 3.0 \ bin \ x64; C:\ Program Files \ Intel \ Intel(R)Management Engine Components \ DAL; C:\ Program Files \ Intel \ Intel(R)管理引擎组件\ IPT; C:\ Program Files(x86)\ Intel \ Intel(R)管理引擎组件\ DAL; C:\ Program Files(x86)\ Intel \ Intel(R)管理引擎C omponents \ IPT; C:\ Program Files \ Lenovo \ Bluetooth Software \; C:\ Program Files \ Lenovo \ Bluetooth Software \ syswow64; C:\ lastools \ bin; C:\ Python27; C:\ Python27 \ Scripts; C: \ Python27 \ DLLs; C:\ Python27 \ Lib \ site-packages; C:\ Users \ User \ AppData \ Roaming.local \ bin; C:\ Program Files(x86)\ Windows Kits \ 8.1 \ Windows Performance Toolkit \; C:\ Program Files \ Microsoft SQL Server \ 110 \ Tools \ Binn \; C:\ Program Files \ GDAL
答案 0 :(得分:0)
重新安装python绑定解决了我的问题。我没有在下面的路径上看到GDAL,但它现在正在工作。是不是应该在那里,因为它不是,我可能会在未来有另一轮GDAL头部刮伤?
::::::::::::::::::::::::::::::::::::::: 这是我在python上输入sys.path时目前所拥有的:
Microsoft Windows [版本6.2.9200] (c)2012 Microsoft Corporation。保留所有权利。
C:\用户\使用者>蟒 win32上的Python 2.7.8(默认,2014年6月30日,16:08:48)[MSC v.1500 64位(AMD64)] 输入“帮助”,“版权”,“信用”或“许可”以获取更多信息。
导入系统 sys.path中 ['','C:\ windows \ SYSTEM32 \ python27.zip','C:\ Python27 \ DLLs','C:\ Python27 \ lib','C:\ Python27 \ lib \ plat-win','C:\ Python27 \ lib \ lib-tk','C:\ Python27','C:\ Python27 \ lib \ site-packages',' C:\ Python27 \ lib中\站点包\ WX-3.0-MSW']