Автоматизация с прокси в Python имеет свои тонкости. Разберём паттерны, которые работают в продакшене.
Библиотека requests: базовое использование — передача словаря proxies. Для SOCKS5 нужен pip install requests[socks]. Всегда устанавливайте таймаут, иначе зависший прокси заблокирует выполнение навсегда.
Пул прокси с автоматической ротацией: реализуйте класс ProxyPool, который хранит список прокси, отслеживает количество использований и ошибок, автоматически исключает нерабочие. Это снижает количество failed requests в 3-5 раз по сравнению со случайным выбором.
Retry логика: не все ошибки одинаковые. ConnectionError — смените прокси. HTTPError 429 — прокси рабочий, но нужна пауза. HTTPError 403 — возможно, IP заблокирован для этого ресурса.
Асинхронная работа: aiohttp с прокси значительно быстрее для высоконагруженного парсинга. Но контролируйте concurrency — слишком много параллельных запросов через один прокси — та же проблема что без прокси.
Логирование: записывайте какой прокси использовался при каждом запросе. При разборе блокировок это незаменимо.
Резидентные Прокси
@residential_proxy_pro_n1k
Работа с прокси в Python: практические паттерны
Этот пост опубликован в Telegram-канале Резидентные Прокси. Подписаться можно по ссылке: @residential_proxy_pro_n1k.