раельно ботов можно вычислить только по HTTP_USER_AGENT, и то не всегда, т.к. маскироваться могут.
Вот список из ExBB FM:
CODE:$spiders = array(
'Aport',
'archive_org',
'TurtleScanner',
'Nutscrape',
'WebSpeedReader',
'StackRambler',
'NetCaptor',
'Bond',
'Wget',
'Space Bison',
'msnbot',
'Yahoo',
'Mediapartners-Google',
'Googlebot',
'Yahoo-MMCrawler',
'Google',
'Slurp',
'ZyBorg',
'Gigabot',
'Exabot',
'Yandex',
'WebAlta',
'WebCrawler'
);
То есть проверяешь, если в $_SERVER['HTTP_USER_AGENT'] одно из этих значений, то это - бот.