// 获取蜘蛛爬虫名或防采集
function isSpider(){
$bots = array(
'Google' => 'googlebot',
'Baidu' => 'baiduspider',
'Yahoo' => 'yahoo slurp',
'Soso' => 'sosospider',
'Msn' => 'msnbot',
'Altavista' => 'scooter ',
'Sogou' => 'sogou spider',
'Yodao' => 'yodaobot'
);
$userAgent = strtolower($_SERVER['HTTP_USER_AGENT']);
foreach ($bots as $k => $v) {
if (strstr($v, $userAgent)) {
return $k;
break;
}
}
return false;
}
// 获取哪种蜘蛛爬虫后保存蜘蛛痕迹。
// 根据采集时HTTP_USER_AGENT是否为空来防止采集
// 抓蜘蛛爬虫
$spi = isSpider();
if ($spi) {
$tlc_thispage = addslashes($_SERVER['HTTP_USER_AGENT']);
$file = 'robot.txt';
$time = date('Y-m-d H:i:s',mktime());
$handle = fopen($file,'a+');
$PR = $_SERVER['REQUEST_URI'];
fwrite($handle, "Time:{$time} ROBOT:{$spi} AGENT:{$tlc_thispage} URL:{$PR} \n\r");
fclose($handle);
}