Я пытаюсь написать отдельный скрипт на python в Windows 7, который использует qgis.core и различные другие библиотеки qgis.
Я нашел старый вопрос на эту тему здесь: Написание автономных скриптов Python с использованием PyQGIS? и следовал его совету, используя руководство здесь: http://docs.qgis.org/testing/en/docs/pyqgis_developer_cookbook/intro.html#python-applications
Код, предложенный здесь:
set PYTHONPATH=c:\qgispath\python
с последующим:
set PATH=C:\qgispath;%PATH%
Я обнаружил, что IDLE не понравился "набор в начале", поэтому мой код выглядит так:
PYTHONPATH="C:\OSGeo4W64\apps\qgis\python"
PATH="C:\OSGeo4W64\apps\qgis\python\qgis\core;%PATH%"
import qgis.core
и я получаю:
Traceback (most recent call last):
File "<pyshell#15>", line 1, in <module>
import qgis.core
ImportError: No module named qgis.core
Я перепробовал каждый вариант путей, которые я могу придумать, включая удаление;% PATH% "в конце (это выглядит немного лишним), но не смог найти больше информации. У кого-нибудь есть идеи, где я мог бы быть пошло не так?
РЕДАКТИРОВАТЬ:
После просмотра комментария Луиджи Пирелли я попробовал:
>>> PYTHONPATH="C:/OSGEO4~1/apps/qgis/./python\qgis"
>>> import qgis.core
Traceback (most recent call last):
File "<pyshell#1>", line 1, in <module>
import qgis.core
ImportError: No module named qgis.core
>>> PATH="C:\OSGeo4W64\apps\qgis\python\qgis\core;%PATH%"
>>> import qgis.core
Traceback (most recent call last):
File "<pyshell#3>", line 1, in <module>
import qgis.core
ImportError: No module named qgis.core
>>> PATH="C:/OSGEO4~1/apps/qgis/./python\qgis\core;%PATH%"
>>> import qgis.core
Traceback (most recent call last):
File "<pyshell#6>", line 1, in <module>
import qgis.core
ImportError: No module named qgis.core
>>>
Ответы:
Если вы установили QGIS через OSGeo4W, я предлагаю вам следовать этому рабочему процессу (я только что проверил его на Windows 7):
Откройте оболочку OSGeo4W .
Start->All programs->OSGeo4W->OSGeo4W Shell
,Установите переменные среды . Мой предпочтительный способ - запустить этот bat-файл (обновлено 2016.11.03: этот bat-файл ) из оболочки OSGeo4W. Как видите, файл устанавливает переменные среды следующим образом:
Конечно, вам нужно самостоятельно проверить, существуют ли эти пути в вашей ОС, и при необходимости скорректировать их.
Итак, загрузите файл .bat и запустите его, открыв его из оболочки OSGeo4W и нажав клавишу ВВОД.
Импортируйте библиотеки PyQGIS одним из следующих способов:
а. Введите интерпретатор Python. Запустите
python
оболочку OSGeo4W и импортируйте библиотеки вручную.б. Выполнить скрипт Python. Запустите
python my_pyqgis_script.py
в оболочке OSGeo4W. Я бы начал с очень простого .Рабочий процесс был опубликован (на испанском языке) несколько лет назад в GeoTux и до сих пор работает. Как видите, я не включаю переменные окружения в скрипт Python, а устанавливаю их в оболочке OSGeo4W.
источник
C:\dllo
), и запускаете файл .bat, записав имя файла и нажав EnterЯ только что боролся с подобной проблемой и заметил пакетный файл в папке OSGeo4W \ bin с именем python-qgis.bat . Это часть установки пакета QGIS 2.18.15 x64 на основе пакета OSGeo4W для Windows 10.
При выполнении этот пакетный файл открывает интерпретатор Python.
import qgis
успешно бежит изнутри.Этот пакетный файл содержит строку (как отметил Герман Каррильо в своем первоначальном ответе):
set PYTHONPATH=%OSGEO4W_ROOT%\apps\qgis\python;%PYTHONPATH%
незадолго до запуска интерпретатора Python.
источник