Вращающиеся прокси для веб-соскабливания
У меня есть искатель веб-страниц python, и я хочу распространять запросы на скачивание среди множества прокси-серверов, возможно, работающих на squid (хотя я открыт для альтернатив). Например, он может работать циклично, где request1 переходит в proxy1, request2 к proxy2 и, в конечном итоге, возвращается назад. Любая идея, как установить это?
Чтобы сделать его более сложным, я также хотел бы динамически изменять список доступных прокси, немного понизить и добавить другие.
Если это имеет значение, IP-адреса назначаются динамически.
Спасибо:)
Ответы
Ответ 1
Сделайте свой сканер имеющим список прокси-серверов и каждый HTTP-запрос позволяет использовать следующий прокси-сервер из списка с помощью циклического режима. Однако это не позволит вам использовать постоянные соединения HTTP/1.1. Изменение списка прокси-сервера в конечном итоге приведет к использованию нового или не использующего прокси-сервер.
Или несколько параллельных подключений открываются параллельно, по одному для каждого прокси и распространяют ваши запросы обхода на каждое открытое соединение. Динамика может быть реализована путем регистрации связи с диспетчером запросов.
Ответ 2
Я установил вращающиеся прокси, используя HAProxy + DeleGate + Multiple Tor. С Tor у вас нет хорошего контроля пропускной способности и латентности, но он полезен для веб-соскабливания. Я только что опубликовал статью на эту тему: Выполнение собственных анонимых поворотных прокси
Ответ 3
Изменить: существует даже оболочка Python для gimmeproxy: https://github.com/ericfourrier/gimmeproxy-api
Если вы не возражаете против Node, вы можете использовать proxy-lists для сбора общедоступных прокси и check-proxy, чтобы проверить их. Это точно, как https://gimmeproxy.com работает, больше информации здесь