Come importare qgis.core nell'app Python?


11

Sono nuovo di Python. Voglio creare un'app GIS con Python usando la libreria QGIS su Windows 7 a 64 bit.

Il mio modo di fare:

installa QGIS 1.7.0

  • Ho impostato PYTHONPATH = D: \ Programmi (x86) \ Quantum GIS Wroclaw \ apps \ qgis \ python
  • Eseguo Python da cmd in D: \ Programmi (x86) \ Quantum GIS Wroclaw \ bin
  • Digito import qgis.core, una finestra pop-up appare con il testo

Impossibile avviare il programma perché qgis_core.dll manca dal computer. Prova a reinstallare il programma per risolvere questo problema

e il testo in cmd è

ImportError: caricamento DLL non riuscito: impossibile trovare il modulo specificato.

Qualcuno può aiutarmi?

Risposte:



5

Devi verificare due cose:

PYTHONPATH

PYTHONPATH è impostato per il cmd che si avvia. Ciò significa che devi impostarlo a livello globale sul tuo sistema

Vai su Pannello di controllo -> Sistema-> Avanzate.

Fai clic sul pulsante "Variabili d'ambiente".

Nel pannello "Variabili di sistema" che appare, fai clic su Nuovo e inserisci PYTHONPATH nel campo "Nome variabile". Nel campo "Valore variabile" immettere il percorso per QGIS.

Oppure puoi impostarlo direttamente dalla riga di comando cmd prima di avviare l'interprete Python con:

set PYTHONPATH=%PYTHONPATH%;C:\My_python_lib

SENTIERO

La DLL che verrà utilizzata dal modulo qgis python deve trovarsi nel tuo percorso. Proprio come si imposta PYTHONPATH sopra, impostare la variabile di ambiente PATH in modo che contenga la directory in cui si trova qgis_core.dll.

La directory da aggiungere è probabilmente D: \ Programmi (x86) \ Quantum GIS Wroclaw \ apps \ qgis Ma controlla che qgis_core.dll sia davvero lì.

OSGEO4W

Come è stato suggerito in un'altra risposta, OSGEO4W installa e imposta tutto per te. Installerà un altro Python, il che può complicare le cose quando si desidera installare moduli Python di terze parti non disponibili in OSGEO4W.

Otterresti anche l'ultima versione di QGIS, che è la 1.7.4 (1.8 in arrivo).


1
Dovresti accettare la mia risposta quindi: meta.stackexchange.com/questions/5234/…
Vincent

1

Se si desidera creare un'applicazione autonoma, è necessario utilizzare la copia qgis.bat in% OSGEO4W_ROOT% \ bin come modello e sostituire la chiamata a qgis con una chiamata a python (o pythonw con lo script dell'applicazione). Avrai quindi un pitone in esecuzione in un ambiente simile a QGIS.

In altre parole: copiare qgis.batin D:\Program Files (x86)\Quantum GIS Wroclaw\binper myqgisapp.bate sostituire l'ultima riga nella copia

avvia "Quantum GIS" / B "% OSGEO4W_ROOT%" \ apps \ qgis \ bin \ qgis.exe% *

con

avviare "My Quantum GIS App" / B "% OSGEO4W_ROOT%" \ apps \ qgis \ bin \ pythonw.exe L: \ path \ to \ your \ python \ app.py

Nota: pythonw.exenon aprirà una finestra di testo separata, ma printnon funzionerà (se necessario, utilizzare python.exe).


Grazie. Ma puoi mostrarmi qualche passo? Sono così confuso
newToAndroid il

Non ho 15 reputazione per votare la tua risposta. Grazie lo stesso. : D
newToAndroid

0

A parte la risposta di Vincent (che ho trovato corretta), è importante notare che il percorso di qgis_core.dll nella variabile d'ambiente PATH dovrebbe venire prima nell'elenco.

Prima di scoprirlo, sono stato bloccato con il problema descritto in un'installazione QGIS 2.0.1 OSGeo4W.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.