Я почти уверен, что многие люди думали об этом, но по некоторым причинам я могу ' Я не могу найти его с помощью поиска Google и StackOverflow.
Я хотел бы создать невидимую ссылку (занесенную в черный список robots.txt) на страницу CGI или PHP, которая будет «ловить» вредоносных ботов и пауков. Пока что пробовал:
Пустые ссылки в теле:
В большинстве случаев это работает довольно хорошо, с двумя небольшими проблемами:
Проблема: Ссылка является частью тела документа. Несмотря на то, что по нему практически невозможно щелкнуть мышью, некоторые посетители все равно случайно нажимают на него во время навигации по сайту с помощью Tab и Enter . Кроме того, если они, например, копируют и вставляют страницу в текстовый редактор или программу электронной почты, ссылка-ловушка копируется и иногда даже становится кликабельной (некоторые программы не любят пустые теги
и скопируйте href как содержимое тега).
Невидимые блоки в теле:
Это устраняет проблему с навигацией с клавиатуры, по крайней мере, в протестированных мной браузерах. Ссылка фактически недоступна при обычном отображении страницы, но все еще полностью видна для большинства роботов-пауков с их текущим уровнем интеллекта.
Проблема: Ссылка все еще является частью DOM. Если пользователь скопирует и вставит содержимое страницы, оно появится снова.
Внутри блоков комментариев:
trap ->
Это эффективно удаляет ссылку из DOM страницы. Что ж, технически комментарий по-прежнему является частью DOM, но он обеспечивает желаемый эффект, заключающийся в том, что соответствующие пользовательские агенты не будут генерировать элемент A, поэтому это не настоящая ссылка.
Проблема: Большинство пауков боты в настоящее время достаточно умны, чтобы анализировать (X) HTML и игнорировать комментарии. Я лично видел ботов, которые используют объекты Internet Explorer COM / ActiveX для анализа (X) HTML и извлечения всех ссылок через XPath или Javascript. Эти типы ботов не обманом переходят по гиперссылке-ловушке.
Я использовал метод № 3 до прошлой ночи, когда меня поразила стая ботов, которые, кажется, действительно избирательно выбирают, по каким ссылкам они переходят. Теперь я вернулся к методу №2, но все еще ищу более эффективный способ.
Любые предложения, Большинство пользователей по завершении оставляют вкладку открытой и переходят на другую вкладку. Время на сайте крайне неточно. Есть ли событие Javascript ...
Есть ли событие Javascript для отслеживания «потери фокуса» текущей вкладки?