在python中,我一直在尝试从脚本调用qgis时遇到这个错误。
代码是:

from qgis.core import *
from qgis.analysis import *

我已经阅读了所有关于这个的帖子;删除了QGIS并重新安装。将PYTHON路径和QGIS前缀变量重置为正确的目录。我还通过dpkg -l | grep qgis检查了依赖项,所有依赖项都是xenial版本。
还有其他建议吗?

最佳答案

我也有同样的问题,但那是在Windows7上。在http://docs.qgis.org/2.8/en/docs/pyqgis_developer_cookbook/intro.html中运行自定义应用程序的最后一点之后,我解决了这个问题。
如果QGIS库和适当的Python模块不在知名的位置,则需要告诉系统在哪里搜索它们,否则Python会抱怨:

>>> import qgis.core
ImportError: No module named qgis.core

可以通过设置PYTHONPATH环境变量来解决此问题。在以下命令中,QGIS path应替换为实际的QGIS安装路径:
在Linux上:export PYTHONPATH=/qgispath/share/qgis/python
在Windows上:设置PYTHONPATH=c:\ qgispath\python
PyQGIS模块的路径现在是已知的,但是它们依赖于qgis核心和qgis图形用户界面库(Python模块仅用作包装器)。对于操作系统,这些库的路径通常是未知的,因此您将再次收到导入错误(消息可能因系统而异):
>>> import qgis.core
ImportError: libqgis_core.so.1.5.0: cannot open shared object file: No such file or directory

通过将QGIS库所在的目录添加到动态链接器的搜索路径来解决此问题:
在Linux上:导出LD_LIBRARY_PATH=/qgispath/lib
在Windows上:设置路径=C:\qgispath;%PATH%
这些命令可以放在引导脚本中,用于启动。使用PyQGIS部署自定义应用程序时,通常有两种可能:
要求用户在安装应用程序之前在其平台上安装QGIS。应用程序安装程序应查找QGIS库的默认位置,如果找不到,则允许用户设置路径。这种方法的优点是更简单,但是它需要用户执行更多的步骤。
将QGIS与应用程序打包在一起。发布应用程序可能更具挑战性,包也会更大,但用户将从下载和安装附加软件的负担中节省下来。
这两种部署模型可以在Windows和MacOSX上混合部署独立的应用程序,因为Linux将QGIS的安装留给用户和他的包管理器。

关于python - ImportError:没有名为qgis.core ubuntu 16.04 python 2.7 qgis 2.16.2的模块,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/39300116/

10-09 17:07