Bir geopy geocoder'a kimlik doğrulamalı HTTP proxy verin
Ham proxy kimlik bilgilerini bir kez kodlayın ve aramalar etrafındaki paylaşılan süreç ortamını değiştirmek yerine geocoder'ın açık eşlemesini seçin.
Geocoder'ı kendi rotasıyla oluşturun:
from urllib.parse import quote
from geopy.geocoders import GoogleV3
account = quote(proxy_user, safe='') + ':' + quote(proxy_password, safe='')
proxy_url = f'http://{account}@proxy.example:8080'
geocoder = GoogleV3(
api_key=google_api_key,
proxies={'http': proxy_url, 'https': proxy_url},
timeout=10,
)Uygulama her iki hesabı da sağlar. google_api_key Google geocoding'ine yetki verir; URL'deki kullanıcı adı ve parola proxy'ye yetki verir. Bu ham bileşenleri bir kez kodlayın, URL'nin yapısal ayırıcılarını kodlamanın dışında bırakarak.
| proxies değeri | geopy politikası |
|---|---|
| None | Sistem keşfine izin ver |
| {} | Doğrudan erişimi seç |
| Boş olmayan eşleme | Sağlanan rotayı seç |
https anahtarı HTTP proxy üzerinden taşınan HTTPS hedefleriyle eşleşir. geopy'nin belgelenmiş arayüzü CONNECT dahil HTTP proxy'yi destekler; https yazımı kendi başına dinleyiciye TLS kurmaz.
Geocoder'ı bu kararlı politikayla yeniden kullanın. Tek tek çağrılar etrafında ortam değerlerini değiştirmek, aynı anda çalışan başka bir geocoder'ı bozabilir.