Как импортировать qgis.core в приложение Python?


11

Я новичок в Python. Я хочу создать ГИС-приложение на Python, используя библиотеку QGIS в Windows 7 64 бит.

Как я это делаю:

установить QGIS 1.7.0

  • Я установил PYTHONPATH = D: \ Program Files (x86) \ Quantum GIS Wroclaw \ apps \ qgis \ python
  • Я запускаю python из cmd в D: \ Program Files (x86) \ Quantum GIS Вроцлав \ bin
  • Я набираю import qgis.core, появляется всплывающее окно с текстом

Программа не может запуститься, потому что на вашем компьютере отсутствует qgis_core.dll. Попробуйте переустановить программу, чтобы решить эту проблему

а текст в cmd есть

ImportError: Ошибка загрузки DLL: указанный модуль не найден.

Может кто-нибудь мне помочь?

Ответы:



5

Вы должны проверить две вещи:

PYTHONPATH

PYTHONPATH устанавливается для запускаемого вами cmd. Это означает, что вы должны установить глобально в вашей системе

Зайдите в Панель управления -> Система-> Дополнительно.

Нажмите на кнопку «Переменные среды».

В появившейся панели «Системные переменные» нажмите «Создать» и введите «PYTHONPATH» в поле «Имя переменной». В поле «Значение переменной» введите путь к QGIS.

Или вы можете установить его непосредственно в командной строке cmd непосредственно перед запуском интерпретатора python:

set PYTHONPATH=%PYTHONPATH%;C:\My_python_lib

ДОРОЖКА

DLL, которая будет использоваться модулем qgis python, должна быть на вашем пути. Так же, как вы установили PYTHONPATH выше, установите переменную среды PATH так, чтобы она содержала каталог, в котором находится qgis_core.dll.

Вероятно, каталог для добавления: D: \ Program Files (x86) \ Quantum GIS Wroclaw \ apps \ qgis Но убедитесь, что qgis_core.dll действительно есть.

OSGEO4W

Как было предложено в другом ответе, OSGEO4W устанавливает и настраивает все для вас. Однако он установит еще один Python, что может усложнить ситуацию, если вы захотите установить модули Python сторонних производителей, которых нет в OSGEO4W.

Вы также получите последнюю версию QGIS, которая является 1.7.4 (скоро будет 1.8).


1
Тогда вы должны принять мой ответ: meta.stackexchange.com/questions/5234/…
Винсент

1

Если вы хотите создать отдельное приложение, вы должны использовать копию qgis.bat в% OSGEO4W_ROOT% \ bin в качестве шаблона и заменить вызов qgis вызовом python (или pythonw вашим скриптом приложения). Затем у вас будет запущен питон в среде, похожей на QGIS.

Другими словами: скопировать qgis.batв D:\Program Files (x86)\Quantum GIS Wroclaw\binк myqgisapp.batи заменить последнюю строку в экземпляре

запустите "Квантовая ГИС" / B "% OSGEO4W_ROOT%" \ apps \ qgis \ bin \ qgis.exe% *

с

запустите «My Quantum GIS App» / B «% OSGEO4W_ROOT%» \ apps \ qgis \ bin \ pythonw.exe L: \ path \ to \ your \ python \ app.py

Примечание: pythonw.exeне откроет отдельное текстовое окно, но printне будет работать (если вам это нужно, используйте python.exe).


Спасибо. Но вы можете показать мне какой-нибудь шаг? Я так растерялся
newToAndroid

У меня нет 15 репутации, чтобы голосовать за ваш ответ. Все равно спасибо. : D
newToAndroid

0

Помимо ответа Винсента (который я нашел правильным), важно отметить, что путь к qgis_core.dll в переменной среды PATH должен стоять первым в списке.

Прежде чем это выяснить, я застрял с описанной проблемой в установке QGIS 2.0.1 OSGeo4W.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.