Первая попытка собрать цены конкурентов закончилась капчей на пятом запросе. Так начинается почти каждый парсер — и почти каждый заканчивается баном. Выход один: прокси и правильная стратегия.
Сайты следят за простыми вещами: сколько запросов летит с одного адреса. Сотня в минуту с одного IP видна за километр. Решение — распределять нагрузку по разным адресам и менять их вовремя.
Практики советуют три правила. Паузы: для обычных магазинов 3-5 секунд между запросами, для порталов — 8-10. Подсети: не берите все адреса из одной — сайты вычисляют. Свежесть: мёртвый список — потерянное время.
«С живым пулом парсер живёт месяцами», — говорят те, кто прошёл этот путь. Сменить адрес автоматически можно через API — настроил один раз и забыл.
Сайты следят за простыми вещами: сколько запросов летит с одного адреса и как часто. Сотня запросов в минуту с одного IP видна за километр. Решение — распределять нагрузку по разным адресам и менять их вовремя. Тут работает ротация ip для парсинга: каждый запрос или пачка запросов — новый адрес.
Что я вынес из практики за пару лет. Первое: паузы. Для обычных магазинов 3-5 секунд между запросами. Для больших порталов — 8-10. Второе: не берите все адреса из одной подсети — сайты это вычисляют. Третье: если нужен прокси для парсинга авито или похожих площадок, смотрите на свежесть пула ещё внимательнее — там антибот жёсткий.
И последнее: скрапинг без бана возможен, если прокси живые и меняются. Мёртвый список — это потерянное время и пустые логи. С живым пулом, который обновляется каждые пять минут, парсер работает месяцами. Сменить ip при парсинге можно автоматически через API — настроил один раз и забыл.