Làm cách nào để sử dụng gói của bên thứ ba trong plugin QGIS?


9

Tôi đang phát triển một plugin QGIS và tôi muốn sử dụng các gói mũi tên hoặc yêu cầu như tôi đã sử dụng để thao tác ngày và API REST.

QGIS không đi kèm với các gói này (ít mũi tên hơn), vì vậy khi tôi cố gắng truy cập plugin của mình trong QGIS tôi đã có:

"ImportError: Không có mô-đun có tên mũi tên"

Làm thế nào tôi có thể chỉ định yêu cầu của tôi?


3
gói trứng của các mô-đun bằng plugin ... hoặc chặn lỗi và thông báo cho người dùng để cài đặt các gói bị thiếu
Luigi Pirelli

R có các gói, Python có các mô-đun và nếu bạn sử dụng phiên bản Windows, chúng rất khó cài đặt (đặc biệt với phiên bản QGIS độc lập, hãy xem Cách cài đặt thư viện python của bên thứ 3 cho QGIS trên Windows? )
gen

2
Trong Boundless plugin, bạn có thể tìm cách đóng gói mô-đun trong cùng một plugin. ví dụ: đọc mã này github.com/boundlessgeo/qgis-geoserver-plugin
Luigi Pirelli

@gene python có các gói và mô-đun - stackoverflow.com/questions/7948494/ trên
user2856

1
@LuigiPirelli nếu bạn tìm thấy thời gian, sẽ thật tuyệt nếu bạn có thể tóm tắt các bước cần thiết để đóng gói một mô-đun trong một plugin để trả lời cho câu hỏi này. Cảm ơn rất nhiều!
underdark

Câu trả lời:


2

Cảm ơn các nguồn lực. Tôi đã thử sử dụng paver nhưng có vẻ hơi khó thực hiện, đối với một nhà phát triển không chuyên gia, phải không?

Hơn nữa, theo mặc định, pip không được cài đặt ngay cả với trình cài đặt OSGeo4W. Bạn có thể paver script làm việc mà không có nó?

Để cài đặt nó, tôi đã làm theo các hướng dẫn này và tôi đã tạo một tệp bó (xem bên dưới) nhưng không giải quyết được các vấn đề về quyền quản trị:

@echo off
Title "PyPi in QGIS"
Echo "Adding 3rd party modules in QGIS"

REM securely download get-pip install script
curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py

REM install pip
python get-pip.py

REM install 3rd party modules
pip install --user arrow
pip install --user requests
pip install --user requests[security]

@echo on
pause

2
Để cài đặt vào thư mục python của người dùng (không cần quyền quản trị), bạn có thể thêm --userchuyển đổi vào lệnh của mình: pip install - mũi tên người dùng và vv
Dmitry Baryshnikov
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.