Прокси для замены ip-адреса
Делимся примером того, как использовать «бесплатные» прокси-серверы для исключения блокировки ip-адреса
Справочно: прокси-сервер ��редставляет собой промежуточный сервер в компьютерных сетях, выполняющий роль посредника между пользователем и целевым сервером, позволяющий клиентам как выполнять косвенные запросы к другим сетевым службам, так и получать ответы.
Вместо прямого подключения к целевому серверу, который может выполнять запрошенный ресурс, например, файл или веб-страницу, клиент направляет запрос на прокси-сервер, который оценивает запрос и выполняет необходимые сетевые транзакции.
Итак, начнем с установки необходимых библиотек.
pip install bs4 requests
Импортируем библиотеки.
Далее создаем функцию, с помощью которой получим список бесплатных прокси-серверов, например, с одного из сайтов, который располагает данной информацией.
Выполним эту функцию и посмотрим на полученный список. Надо заметить, что срок «жизни» этого списка недолгий. И для получения нового списка необходимо будет снова выполнить функцию get_proxy().
На данном рисунке представлен фрагмент полученного списка.
Другая функция, назовем ее get_session, получив этот список создает сеанс запросов, который случайно выбирет для этого сеанса один из переданных ip-адресов прокси.
Чтобы это проверить, выполним следующий код, который отправит запрос на сайт http://icanhazip.com, возвращающий наш ip-адрес.
Из полученного результата можем видеть, что это будет не наш фактический ip-адрес, а один из ip-адресов списка proxy.
Если потребуется использовать прокси-сервер в более длительном процессе парсинга, то можно воспользоваться сервисом, предоставляемым Crawlera. Этот прокси-ротатор справится с большим объемом информации и с сайтами, защищенными от роботов.