运行 来自 Python 的 QGIS 时没有名为 sip 的模块

No module named sip when running QGIS from Python

我安装了 QGIS Valmiera 2.2.0 并使用这个 documentation.

启动了一个简单的 python 脚本

我很难过,因为我总是在使用

from qgis.core import *

我收到消息 ImportError: No module named qgis.core。我用语句

解决了这个问题

sys.path.extend([r"C:\Program Files (x86)\QGIS Valmiera\apps\qgis\python"])

使用正确的 python 路径。然后我希望它能工作,但我 运行 进入下一条错误消息:

ImportError: No module named sip

我又试了一遍,添加了qgis的子文件夹,可能连接到sip,但是没有成功。

sys.path.extend([r"C:\Program Files (x86)\QGIS Valmiera\apps\Python27",
                 r"C:\Program Files (x86)\QGIS Valmiera\apps\Qt4",
                 r"C:\Program Files (x86)\QGIS Valmiera\apps\Python27\sip",
                 r"C:\Program Files (x86)\QGIS Valmiera\apps\Python27\sip\PyQt4",
                 r"C:\Users\Downloads\sip-4.16.7\sip-4.16.7"])

我猜它正在寻找的sip.exe实际上位于C:\Program Files (x86)\QGIS Valmiera\apps\Python27路径中。

预装的功能是否有遗漏或可能是什么问题?

感谢任何提示!

更新: 对于任何感兴趣的人:我做了以下步骤来安装 sip 库,到目前为止还没有最终成功:

感谢我的问题 here 的回答,现在可以使用了。

实际上,sip 库似乎确实包含了 QGIS 发行版,但对于 运行 脚本,不仅需要设置 PATHPYTHONPATH正确还要调用o4w_env.bat,否则会找不到。

因此可以使用答案中的 bat 脚本来设置所有内容,然后调用 python 脚本,然后可以使用 sip 和所有内容。