Bagaimana cara mengimpor qgis.core ke aplikasi Python?

11

Saya baru mengenal Python. Saya ingin membuat aplikasi GIS dengan Python menggunakan perpustakaan QGIS di Window 7 64 bit.

Cara saya melakukannya:

instal QGIS 1.7.0

  • Saya menetapkan PYTHONPATH = D: \ Program Files (x86) \ Quantum GIS Wroclaw \ apps \ qgis \ python
  • Saya menjalankan python dari cmd di D: \ Program Files (x86) \ Quantum GIS Wroclaw \ bin
  • Saya mengetik import qgis.core, jendela sembulan muncul dengan teks

Program tidak dapat memulai karena qgis_core.dll hilang dari komputer Anda. Coba instal ulang program untuk memperbaiki masalah ini

dan teks dalam cmd adalah

ImportError: Beban DLL gagal: Modul yang ditentukan tidak dapat ditemukan.

Ada yang bisa bantu saya?

baruToAndroid
sumber

Jawaban:

5

Anda harus memverifikasi dua hal:

PYTHONPATH

PYTHONPATH diatur untuk cmd yang Anda luncurkan. Ini berarti Anda harus mengaturnya secara global di sistem Anda

Pergi ke Control Panel -> System-> Advanced.

Klik pada tombol 'Variabel Lingkungan'.

Di panel 'Variabel Sistem' yang muncul, klik Baru dan masukkan PYTHONPATH di bidang 'Nama Variabel'. Di bidang 'Nilai Variabel' masukkan jalur ke QGIS.

Atau Anda dapat mengaturnya langsung pada baris perintah cmd tepat sebelum meluncurkan juru bahasa python dengan:

set PYTHONPATH=%PYTHONPATH%;C:\My_python_lib

PATH

DLL yang akan digunakan oleh modul python qgis harus ada di jalur Anda. Sama seperti Anda mengatur PYTHONPATH di atas, atur variabel lingkungan PATH sehingga berisi direktori tempat qgis_core.dll berada.

Direktori yang akan ditambahkan mungkin D: \ Program Files (x86) \ Quantum GIS Wroclaw \ apps \ qgis Tapi periksa apakah qgis_core.dll benar-benar ada.

OSGEO4W

Seperti yang disarankan dalam jawaban lain, OSGEO4W menginstal dan mengatur semuanya untuk Anda. Ini akan menginstal Python lain, yang dapat menyulitkan ketika Anda ingin menginstal modul Python pihak ketiga tidak tersedia di OSGEO4W.

Anda juga akan mendapatkan versi QGIS terbaru, yaitu 1.7.4 (1.8 segera hadir).

Vincent
sumber
1
Anda harus menerima jawaban saya kemudian: meta.stackexchange.com/questions/5234/…
Vincent
1

Jika Anda ingin membuat aplikasi mandiri, Anda harus menggunakan salin qgis.bat di% OSGEO4W_ROOT% \ bin sebagai templat dan ganti panggilan menjadi qgis dengan panggilan ke python (atau pythonw dengan skrip aplikasi Anda). Anda kemudian akan memiliki python yang berjalan di lingkungan yang mirip dengan QGIS.

Dengan kata lain: copy qgis.batdi D:\Program Files (x86)\Quantum GIS Wroclaw\binuntuk myqgisapp.batdan mengganti baris terakhir di copy

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

dengan

mulai "Aplikasi Quantum GIS Saya" / B "% OSGEO4W_ROOT%" \ apps \ qgis \ bin \ pythonw.exe L: \ path \ to \ your \ python \ app.py

Catatan: pythonw.exetidak akan membuka jendela teks terpisah, tetapi printtidak akan berfungsi (jika Anda membutuhkannya, gunakan python.exe).

jef
sumber
Terima kasih. Tetapi bisakah Anda menunjukkan kepada saya beberapa langkah? Saya sangat bingung
newToAndroid
Saya tidak punya 15 reputasi untuk memilih jawaban Anda. Terima kasih. : D
newToAndroid
0

Terlepas dari jawaban Vincent (yang saya temukan benar), penting untuk dicatat bahwa jalan untuk qgis_core.dll dalam variabel lingkungan PATH harus datang pertama dalam daftar.

Sebelum menemukan ini, saya telah terjebak dengan masalah yang dijelaskan dalam instalasi OSGeo4W QGIS 2.0.1.

Jan Šimbera
sumber