Улучшение [1.1.13] Список user_agent-ов и их хранение вместе с сессиями (net::http)

fastkill

A-Parser Enterprise License
A-Parser Enterprise
В продолжение этой задачи http://a-parser.com/threads/1085/

Предлагается в специальном файле создавать список с user_agent-ами, для их закрепления за прокси (случайным образом). При первом обращении парсер берет прокси, выбирает для него случайный user_agent, при последующем обращении по этому прокси используется тот же user_agent.
Это позволит снизить риск бана проксей (особенно подсеток) по юзерагенту.

Проблема актуальна как для штатных парсеров Google и Yandex, так и для Net::http
 
Мне также хотелось бы увидеть такую реализацию.
 
Реализовано через шаблонизатор, создана глобальная переменная $tools которая теперь будет хранить набор инструментов доступных в любом шаблоне(в будущем в т.ч. пользовательских)

HnO2n.png


Первый инструмент - $tools.ua: $tools.ua.list - содержит список агентов, $tools.ua.random() - метод выводит рандомный агент из списка
Также добавлена поддержка шаблонов для параметра User agent - шаблон надо указывать в явном виде
Cписок агентов хранится в файле files/tools/user-agents.txt



Проблема актуальна как для штатных парсеров Google и Yandex
для штатных парсеров не будет возможности менять агент, т.к. это напрямую может влиять на верстку и соответственно на корректность парсинга
 
Назад
Верх