如何将qgis.core导入Python应用程序?


11

我是Python的新手。我想使用Windows 7 64位上的QGIS库使用Python创建GIS应用程序。

我的方式:

安装QGIS 1.7.0

  • 我设置PYTHONPATH = D:\ Program Files(x86)\ Quantum GIS Wroclaw \ apps \ qgis \ python
  • 我从C:\ Program Files(x86)\ Quantum GIS Wroclaw \ bin中的cmd运行python
  • 我输入import qgis.core,出现一个带有文本的弹出窗口

该程序无法启动,因为您的计算机缺少qgis_core.dll。尝试重新安装程序以解决此问题

和cmd中的文本是

ImportError:DLL加载失败:找不到指定的模块。

谁能帮我?

Answers:



5

您必须验证两件事:

肺炎路径

PYTHONPATH为您启动的cmd设置。这意味着您必须在系统上全局设置它

转到控制面板->系统->高级。

单击“环境变量”按钮。

在出现的“系统变量”面板中,单击“新建”,然后在“变量名称”字段中输入PYTHONPATH。在“变量值”字段中,输入QGIS的路径。

或者,您可以在使用以下命令启动python解释器之前直接在cmd命令行上进行设置:

set PYTHONPATH=%PYTHONPATH%;C:\My_python_lib

路径

qgis python模块将使用的DLL必须在您的路径中。就像在上面设置PYTHONPATH一样,设置PATH环境变量,使其包含qgis_core.dll所在的目录。

要添加的目录可能是D:\ Program Files(x86)\ Quantum GIS Wroclaw \ apps \ qgis,但是请检查qgis_core.dll是否确实存在。

OSGEO4W

正如另一个答案所建议的那样,OSGEO4W会为您安装并设置所有内容。但是它将安装另一个Python,当您要安装OSGEO4W中不提供的第三方Python模块时,这会使事情复杂化。

您也将获得最新的QGIS版本,即1.7.4(即将推出1.8)。


1
然后,您应该接受我的回答:meta.stackexchange.com/questions/5234/…–
Vincent

1

如果要创建独立的应用程序,则应使用%OSGEO4W_ROOT%\ bin中的副本qgis.bat作为模板,并将对qgis的调用替换为对python(或使用应用程序脚本的pythonw)的调用。然后,您将在类似于QGIS的环境中运行python。

换句话说:复制到并替换副本qgis.bat中的最后一行D:\Program Files (x86)\Quantum GIS Wroclaw\binmyqgisapp.bat

启动“ Quantum GIS” / B“%OSGEO4W_ROOT%” \ apps \ qgis \ bin \ qgis.exe%*

启动“我的Quantum GIS应用程序” /B“%OSGEO4W_ROOT%”\apps\qgis\bin\pythonw.exe L:\ path \ to \ your \ python \ app.py

注意:pythonw.exe将不会打开单独的文本窗口,但print将无法正常工作(如果需要,请使用python.exe)。


谢谢。但是你能告诉我一些步骤吗?我很困惑
newToAndroid

我没有15个声誉可以投票给您答案。还是要谢谢你。:D
newToAndroid 2012年

0

除了文森特的答案(我发现是正确的)之外,还需要注意的是,PATH环境变量中的qgis_core.dll路径应在列表中排在首位

在发现这个问题之前,我一直将描述的问题留在QGIS 2.0.1 OSGeo4W安装中。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.