Tải dữ liệu bản đồ Cartopy qua proxy
Cấu hình trình tải Python cho dữ liệu bản đồ còn thiếu, hoặc cung cấp các tệp dữ liệu mà Cartopy mong đợi trước khi vẽ ngoại tuyến.
Có thể tạo bản đồ cục bộ trong khi các đường bờ biển hoặc dữ liệu tham chiếu khác vẫn cần được tải xuống. Nếu Cartopy không tìm thấy tài nguyên cần thiết, Downloader tiêu chuẩn có thể lấy nó trước khi bản vẽ hoàn tất.
Trình tải đó dùng urllib.request.urlopen của Python. Với proxy HTTP chuyển tiếp phục vụ cả hai lược đồ đích, hãy khởi động quá trình vẽ với môi trường như:
export http_proxy=http://proxy.example:8080
export https_proxy=http://proxy.example:8080Proxy phải nằm trong môi trường mà tiến trình Python thực tế kế thừa. Một nhân sổ tay hoặc IDE trên máy tính đang chạy có thể cần cấu hình khởi chạy riêng. Với Jupyter, hãy cấu hình môi trường khởi động của nhân đã chọn trước khi lấy dữ liệu. Biến HTTPS vẫn có thể chứa URL proxy HTTP. Các lượt tải dữ liệu tham chiếu công khai có thể dùng một mục HTTP từ danh sách proxy HTTP ở nơi tuyến đó được phép và chưa cấu hình tài khoản proxy.
Hãy xem URL dữ liệu được yêu cầu trong cảnh báo hoặc ngoại lệ tải xuống. Tài nguyên dữ liệu thiếu, thử thách proxy và lỗi tin cậy HTTPS xảy ra ở các điểm khác nhau; đổi phép chiếu sẽ không sửa được tuyến mạng của trình tải.
Với máy phải giữ ngoại tuyến
Chuẩn bị bộ dữ liệu cần thiết trước và trỏ Cartopy tới thư mục gốc của nó:
from pathlib import Path
import cartopy
cartopy.config['pre_existing_data_dir'] = Path('/srv/map-data')Thư mục cần bố cục mà trình tải liên quan mong đợi, bao gồm các tệp bộ dữ liệu đầy đủ. Một thư mục chứa kho lưu trữ tùy ý không tự động là đường dẫn tài nguyên mà Cartopy tìm kiếm.
pre_existing_data_dir được kiểm tra trước data_dir. Nếu tài nguyên không có ở cả hai nơi, một mục có thể tải xuống vẫn có thể kích hoạt việc lấy vào data_dir, thư mục này phải ghi được. Vì vậy đặt thư mục có sẵn là một lựa chọn tìm kiếm, không phải công tắc toàn cục «không bao giờ dùng mạng».
Chuẩn bị mọi độ phân giải và đối tượng mà các bản vẽ dự kiến yêu cầu. Một bản đồ thô từng thành công không chứng minh rằng đường bờ biển chi tiết hơn đã có sẵn. Dịch vụ ô và trình tải tùy chỉnh có thể có cách lấy dữ liệu riêng.