Làm cách nào để nhập qgis.core vào ứng dụng Python?


11

Tôi mới dùng Python. Tôi muốn tạo ứng dụng GIS với Python bằng thư viện QGIS trên Window 7 64 bit.

Cách mà tôi làm:

cài đặt QGIS 1.7.0

  • Tôi đặt PYTHONPATH = D: \ Chương trình tệp (x86) \ Quantum GIS Wroclaw \ apps \ qgis \ python
  • Tôi chạy python từ cmd trong D: \ Program Files (x86) \ Quantum GIS Wroclaw \ bin
  • Tôi nhập nhập qgis.core, một cửa sổ bật lên xuất hiện với văn bản

Chương trình không thể bắt đầu vì qgis_core.dll bị thiếu khỏi máy tính của bạn. Hãy thử cài đặt lại chương trình để khắc phục sự cố này

và văn bản trong cmd là

ImportError: DLL tải thất bại: Không thể tìm thấy mô-đun được chỉ định.

Ai giúp tôi với?

Câu trả lời:



5

Bạn phải xác minh hai điều:

PYTHONPATH

PYTHONPATH được đặt cho cmd bạn khởi chạy. Điều này có nghĩa là bạn phải đặt nó trên toàn cầu trên hệ thống của bạn

Chuyển đến Bảng điều khiển -> Hệ thống-> Nâng cao.

Nhấp vào nút 'Biến môi trường'.

Trong bảng 'Biến hệ thống' xuất hiện, nhấp vào Mới và nhập PYTHONPATH vào trường Name Tên biến '. Trong trường 'Giá trị biến', nhập đường dẫn đến QGIS.

Hoặc bạn có thể đặt nó trực tiếp trên dòng lệnh cmd ngay trước khi khởi chạy trình thông dịch python với:

set PYTHONPATH=%PYTHONPATH%;C:\My_python_lib

CON ĐƯỜNG

DLL sẽ được sử dụng bởi mô-đun python qgis phải nằm trong đường dẫn của bạn. Giống như khi bạn đặt PYTHONPATH ở trên, hãy đặt biến môi trường PATH để nó chứa thư mục chứa qgis_core.dll.

Thư mục cần thêm có lẽ là D: \ Program Files (x86) \ Quantum GIS Wroclaw \ apps \ qgis Nhưng hãy kiểm tra xem qgis_core.dll có thực sự ở đó không.

OSGEO4W

Như đã đề xuất trong một câu trả lời khác, OSGEO4W cài đặt và thiết lập mọi thứ cho bạn. Mặc dù vậy, nó sẽ cài đặt một Python khác, điều này có thể làm phức tạp mọi thứ khi bạn muốn cài đặt các mô-đun Python của bên thứ ba không có sẵn trong OSGEO4W.

Bạn cũng sẽ nhận được phiên bản QGIS mới nhất, đó là 1.7.4 (sắp có 1.8).


1
Bạn nên chấp nhận câu trả lời của tôi sau đó: meta.stackexchange.com/questions/5234/ Kẻ
Vincent

1

Nếu bạn muốn tạo một ứng dụng độc lập, bạn nên sử dụng bản sao qgis.bat trong% OSGEO4W_ROOT% \ bin làm mẫu và thay thế cuộc gọi đến qgis bằng lệnh gọi python (hoặc pythonw bằng tập lệnh ứng dụng của bạn). Sau đó, bạn sẽ có một con trăn chạy trong một môi trường tương tự như QGIS.

Nói cách khác: sao chép qgis.battrong D:\Program Files (x86)\Quantum GIS Wroclaw\binđể myqgisapp.batvà thay thế dòng cuối cùng trong bản sao

bắt đầu "GIS lượng tử" / B "% OSGEO4W_ROOT%" \ apps \ qgis \ bin \ qgis.exe% *

với

bắt đầu "Ứng dụng GIS lượng tử của tôi" / B "% OSGEO4W_ROOT%" \ apps \ qgis \ bin \ pythonw.exe L: \ path \ to \ your \ python \ app.py

Lưu ý: pythonw.exesẽ không mở một cửa sổ văn bản riêng, nhưng printsẽ không hoạt động (nếu bạn cần, hãy sử dụng python.exe).


Cảm ơn. Nhưng bạn có thể chỉ cho tôi một số bước? Tôi rất bối rối
newToAndroid

Tôi không có 15 danh tiếng để bỏ phiếu trả lời của bạn. Dù sao cũng cảm ơn bạn. : D
newToAndroid

0

Ngoài câu trả lời của Vincent (mà tôi thấy đúng), điều quan trọng cần lưu ý là đường dẫn đến qgis_core.dll trong biến môi trường PATH phải xuất hiện đầu tiên trong danh sách.

Trước khi phát hiện ra điều này, tôi đã bị mắc kẹt với vấn đề được mô tả trong bản cài đặt QGIS 2.0.1 OSGeo4W.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.