Какие методы можно использовать для обнаружения так называемых «черных дыр» (ловушки для пауков) при создании веб-сканера?

Видел упоминание о Списке. ForEach выше; 2.0 представил собрание основанных на предикате операций набора - Находят, FindAll, Существует, и т.д. Вместе с анонимными делегатами, можно почти достигнуть простоты 3.5's лямбда-выражения.

27
задан Kara 14 April 2014 в 18:51
поделиться

3 ответа

А если ты MD5(the content of the URL)?

Я знаю, что это не самое деликатное решение, но вы можете обнаружить дублированный контент. Вам нужно будет создать уникальное поле md5 (в БД или аналогичном) и сравнить каждое содержимое URL с этим полем.

Если на странице есть что-то свое в каждом запросе (например, отметка времени), это решение не будет работать.

1
ответ дан 28 November 2019 в 05:38
поделиться

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

Я думаю, что было бы лучше разработать стратегию, в которой каждой странице назначено значение рейтинга страницы. Ссылкам тоже присваивается значение, после чего все идентичные ссылки приводят к окончательному ранжированию цели (потенциальная прибыль при поиске на странице).

Пауку разрешается ползать только в течение периода времени, определенного потенциальной отдачей. Теперь пауки отбрасываются, добывают данные, поднимаются и перемещаются туда, где есть спрос.

Таким образом, сервер не будет ловить своих пауков в поиске страниц на неопределенный срок, поскольку они постоянно переназначаются туда, где спрос самый высокий.

4
ответ дан 28 November 2019 в 05:38
поделиться

Содержимое на некоторых плохо спроектированных сайтах иногда может быть сильно избыточным, но я не вижу никакой законной причины избегать ловушек черных дыр.

Целью черной дыры является обнаружение роботов, которые не в состоянии / отказываются соблюдать файл /robots.txt (если он существует) или атрибуты rel = "nofollow" в ссылках. Такие роботы обычно используются для очистки адресов электронной почты и другой информации для явной цели рассылки спама людям или продажи этих данных спамерам.

Ссылки на черные дыры обычно скрыты, чтобы обычные пользователи случайно не попали в ловушку. Они также не являются проблемой для Google, Bing и т. Д., Поскольку они выполняют то, что владелец сайта попросил их сделать (т.е. уважают владельцев robots.txt). Единственные люди, попавшие в ловушку, - это те, у кого нет ^ & amp; @ и плохо спроектированных сканеров.

0
ответ дан 28 November 2019 в 05:38
поделиться
Другие вопросы по тегам:

Похожие вопросы: