Как определить, не является ли пользователь, заходящий на ваш сайт, ботом?
Я знаю, что агенты пользователей являются одним из индикаторов, но это легко подделать. Какие еще существуют надежные индикаторы того, что посетитель действительно бот? Несогласованные заголовки? Запрашиваются ли изображения/javascript? Спасибо!
6 answers
CVSTRAC использует для этого страницу honeypot. Это страница, связанная где-то на сайте, на которую заходят поисковые роботы, но люди обычно игнорируют ее. CVSTrac делает еще один шаг вперед, позволяя пользователю доказать, что он человек.
"Запрашиваются ли изображения/javascript?" Я бы пошел на это, однако Google и другие в настоящее время запрашивают изображения и файлы javascript.
Как насчет скорости запроса времени? Боты читают ваш контент намного быстрее, чем люди.
Есть 4 вещи, которые мы ищем:
Строка агента пользователя. Это очень легко подделать, но часто искатели будут использовать свою собственную уникальную строку агента пользователя.
Скорость доступа к страницам, если они обращаются более чем к одной каждые полсекунды или около того, обычно является хорошим показателем
Если они запрашивают только HTML-код или запрашивают всю страницу целиком. Некоторые искатели будут запрашивать только структуру HTML. Обычно это хороший совет выключен.
Входящий URL-адрес
Также может помочь своего рода обратная капча; вы можете создать поле ввода текста с отображением: нет; в его атрибуте стиля (или в вашей таблице стилей). Если это опубликовано, скорее всего, вы имеете дело с ботом.
Редактировать: На самом деле это было то, что было объединено в моем RSS-ридере, если я смогу найти источник, я приведу хороший пример.
Взгляните на Плохое поведение , библиотеку, в которой используется широкий спектр методов обнаружения ботов
Разве не для этого придумана капча ?