2016-02-10 1 views
1

Например, в случае обхода StackOverflow, то имеет смысл задержки на основании имени хоста доменного имени/(например, послать запрос stackoverflow.com каждые 10 минут)задержка Crawl на основе IP-адреса против имени хоста против имени домена

В случае с * .blogspot.com имеет смысл только откладывать запросы на основе имени домена, так как есть миллионы имен хостов, заканчивающиеся на .blogspot.com, и задержки на основе этого будут наводнять сервер миллионами запросов.

При сканировании широкого спектра веб-сайтов (сканирование веб-масштаба), какова наилучшая практика с точки зрения установления задержек между запросами? Должен ли я откладывать запросы на основе IP-адреса, имени хоста или имени домена?

+0

Почему бы не почитать задержка прокрутки в файле robots.txt (если установлен)? –

+1

@RowlandShaw сканер, подобный Nutch, будет извлекаться в распределенном режиме и с несколькими потоками на узел. Если искатель группирует URL-адреса на один домен, вы можете запустить a.x.com и b.x.com в отдельных потоках - каждый поток будет проверять файл robots.txt отдельно, а настройки вежливости не будут полностью соблюдены. –

ответ

2

Это хорошая практика для разделения по IP с помощью Nutch. Шаг генерации занимает немного больше времени из-за разрешения IP, но вы получите гарантию того, что Fetcher будет вести себя вежливо, в то же время сохраняя хорошую производительность. В любом случае будут соблюдены настройки вежливости от robots.txt.

Я сделал многомиллиардный переполнения страниц с помощью Nutch и из опыта группирования URL по IP - лучший вариант. Последнее, что вы хотите, - это занесение в черный список веб-сайтов или, что еще хуже, AWS (или какой бы облачный провайдер, с которым вы работаете) выгнали вас. Многие веб-мастера даже не знают о файле robots.txt и будут чувствовать себя очень защитно, что они воспринимают вашего искателя как оскорбительное - даже если вы намерены вежливо ползать. Чем больше масштаб, тем более осторожным вы должны быть.

+1

Спасибо за подробный ответ. –

Смежные вопросы