Все мы в какой-то степени роботы, но вот все же. Сделал скрипт, который записывает в таблицу БД информацию о пришедшем запросе от посетителя сайта. Дата, IP, домен... Потом статистику обрабатывать. Как лучше "по-простому" отличать робота от человека? Спасибо.
"по простому", это анализировать заголовок User-Agent. конечно робот может маскироваться, но это уже будет вариант не по простому. https://security.stackexchange.com/...e-is-requested-by-robot-but-not-users-browser --- Добавлено --- http://www.useragentstring.com/pages/useragentstring.php
@Maputo почему бы нет. надо только признать, что это бесконечная гонка между нападением и обороной ))) любая технология не абсолютна, а "достаточно хороша" в каком-то контексте. update: тема "робот ли это?" близка к проблеме узнавания пользователя. если пользователь никак не узнаётся, то это с большой вероятностью робот. если пользователь видит то, что человек не должен видеть (скрыто средствами CSS), то это скорее всего робот. если ты однажды по какому-то признаку отметил, что с даннного IP приходил робот, то это скорее всего робот и на тот раз --- Добавлено --- про узнавание пользователя: https://stackoverflow.com/questions/15966812/user-recognition-without-cookies-or-local-storage обзор чего вообще есть по теме
ОК, спасибо, буду дальше разбираться.... --- Добавлено --- если пользователь видит то, что человек не должен видеть (скрыто средствами CSS), то это скорее всего робот. Вот это не понял. А каким образом я (PHP) узнаю, что на вызванной странице было увидено пользователем (роботом)?
@Vladchucha, на странице висит ссылка, которая скрыта средствами CSS или JS, если кто-то по ней приходит, то скорее всего это робот, чекаешь его IP-шник, и смотришь сколько с этого адреса запросов и как часто идёт обращение к сайту. Роботы обычно любят делать это побырому. В общем вычисление роботов - это комплексное решение.