serg_small_developer
@serg_small_developer
Начинающий прогер

Как парсить без бана?

Всем привет, Интересует как парсят большое количество страниц сайта (сайтов) и при этом не получать бан?
Вот именно интересует как многие обходят это, я себе написал парсер на питоне используя (scrapy) все работает как нужно и т.д., но проблема в том что некоторые банят даже если ставить значительную паузу между потоками, как в основном это можно обойти?, у меня мысли только про прокся т.е. прикрутить какой-то прокси чекер чтобы искать их в большом количестве и использовать дальше, но может есть что-то более эффективнее.
Понимаю что никто секретов раскрывать не хочет и т.д., но прошу хотя бы натолкнуть в нужную сторону если не хотите говорить)
  • Вопрос задан
  • 14703 просмотра
Решения вопроса 6
sergey-gornostaev
@sergey-gornostaev
Седой и строгий
Парсеры палятся на том, что ведут себя как роботы. Люди не обходят все доступные ссылки, только некоторое подмножество без ухода на большую глубину. Чтобы не попасться, надо изобразить группу людей шарящихся по сайту. Для этого надо после разбора страницы входа парсить только две-три ссылки с неё, делать случайные паузы между запросами, потом сбрасывать принятые куки, менять user agent и прокси и парсить другие две-три ссылки. Естественно, прокси не должны быть публичными. Если вы могли найти и скачать их список, то разработчики защиты тоже уже его скачали.
Ответ написан
Комментировать
@kzoper
Думаю что надо не искать прокси, а покупать.
Ответ написан
@Verz1Lka
Web scraping expert
Согласен с предыдущим пользователем.
Хотите парсить в промышленных масштабах - покупайте прокси. Можно покупать общие с другими пользователями прокси, можно выделенные. Торовские ноды банят почти на первом этапе, если начинают защищать сайт.
Да, можно так-же использовать разные cookie сессии. Хорошее решение - отдельная сессия для каждого прокси. Однако на практике могу сказать, что сайты редко анализируют именно поведение пользователя, чтоб детектить бота, это скорее уже какие-то крутые специальные антискрапинговые системы могут себе позволить.
Ответ написан
Комментировать
nightvich
@nightvich
ITman
Юзаю tor через polipo.
Ответ написан
Комментировать
zamboga
@zamboga
Бизнес-аналитика, фин. моделирование, дашборды
Я юзаю 2 варианта в зависимости от задач:
1. Собственные прокси, поднятые на VPS (VDS).
2. Прокси через TOR-ноды.
Ответ написан
Комментировать
JabbaHotep
@JabbaHotep
Пытаюсь минимизировать ручную работу
Для большинства сайтов подойдет закупка прокси, но есть и такие сайты которые уже забанили пулы известных облачных сервисов (линода там и прочие digitalocean), поэтому гарантированно рабочего решения для всех сайтов с помощью прокси нет.
Также на проблемных сайтах помогает максимально копировать запросы из реального браузера, все хедеры, рефереры и тому подобное. Также в практике были случаи когда парсинг прерывался из-за кук, в этом случае можно чистить куки. Паузы подбирать, например, nike нещадно банит, но если сделать паузы 40-80 секунд, то можно отпарсить с одним прокси без проблем.
В общем, каждый кейс надо разбирать отдельно и принимать решение наиболее подходящее.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы