Фанат
Может его все таки больше интересует как опознать бота ?
Писал я счетчик уникальных посетителей. так вот
боты все лафу портили. Я для чела в сесии ставил переменную, что он засчитан, сажал куку, что он уже был у меня.
А как боты свински себя ведут в этом плане объяснять не нужно.
Вот пришлось по user-agent отсекать их от подсчета.
Учитывая что известных поисковиков больше 200
и сравнивать по полному списку накладно, попытался выделить признаки $bots.
Вообщем критикуйте, дополняйте .
global $HTTP_SERVER_VARS;
$agent = strtoupper($HTTP_SERVER_VARS["HTTP_USER_AGENT"]);
// признаки ботов или конкретные их имена (в верхнем регистре)
$bots=array("HTTP","BOT","SPIDE","CRAWL","YANDEX","APORT","RAMBLER","SEARCH","SEEK","SITE");
$botsCount=count($bots);
$isBot=0;
for($i=0;$i<$botsCount;$i++){
if(strpos($agent,$bots[$i])!==false){
$isBot=1; $i=99999; //закончили цикл присвоев переменной значение больше чем ботов в массиве
}
}
return ($isBot==1?'bot':'user');
Может его все таки больше интересует как опознать бота ?
Писал я счетчик уникальных посетителей. так вот
боты все лафу портили. Я для чела в сесии ставил переменную, что он засчитан, сажал куку, что он уже был у меня.
А как боты свински себя ведут в этом плане объяснять не нужно.
Вот пришлось по user-agent отсекать их от подсчета.
Учитывая что известных поисковиков больше 200
и сравнивать по полному списку накладно, попытался выделить признаки $bots.
Вообщем критикуйте, дополняйте .
global $HTTP_SERVER_VARS;
$agent = strtoupper($HTTP_SERVER_VARS["HTTP_USER_AGENT"]);
// признаки ботов или конкретные их имена (в верхнем регистре)
$bots=array("HTTP","BOT","SPIDE","CRAWL","YANDEX","APORT","RAMBLER","SEARCH","SEEK","SITE");
$botsCount=count($bots);
$isBot=0;
for($i=0;$i<$botsCount;$i++){
if(strpos($agent,$bots[$i])!==false){
$isBot=1; $i=99999; //закончили цикл присвоев переменной значение больше чем ботов в массиве
}
}
return ($isBot==1?'bot':'user');