Дайте одному геокодеру geopy автентифікований HTTP-проксі
Закодуйте необроблені облікові дані проксі один раз і виберіть явне зіставлення геокодера замість зміни спільного середовища процесу навколо пошуків.
Створіть геокодер з власним маршрутом:
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,
)Програма надає обидва облікові записи. google_api_key дозволяє геокодування Google; ім'я користувача та пароль у URL дозволяють проксі. Закодуйте ці необроблені компоненти один раз, залишивши структурні роздільники URL поза кодуванням.
| значення proxies | політика geopy |
|---|---|
| None | Дозволити виявлення системи |
| {} | Вибрати прямий доступ |
| Непорожнє зіставлення | Вибрати наданий маршрут |
Ключ https відповідає HTTPS-призначенням, що передаються через HTTP-проксі. Документований інтерфейс geopy підтримує HTTP-проксі, включно з CONNECT; написання https саме по собі не встановлює TLS з отримувачем.
Повторно використовуйте геокодер із цією стабільною політикою. Зміна значень середовища навколо окремих викликів може завадити іншому геокодеру, що працює одночасно.