有没有办法在我的网站上检测搜索引擎或网络爬虫?我在phpBB中看到管理员可以查看和允许搜索引擎,同时我们也可以看到机器人(如Google Bot)的最后一次访问。
有没有PHP脚本可以实现这个功能?不是Google Analytics或同类应用程序。我需要在我的博客网站上实现它,我认为有某种方法可以找出来?
有没有办法在我的网站上检测搜索引擎或网络爬虫?我在phpBB中看到管理员可以查看和允许搜索引擎,同时我们也可以看到机器人(如Google Bot)的最后一次访问。
有没有PHP脚本可以实现这个功能?不是Google Analytics或同类应用程序。我需要在我的博客网站上实现它,我认为有某种方法可以找出来?
Baiduspider+(+http://www.baidu.com/search/spider_jp.html)
这是一个用户代理字符串的例子:Mozilla/5.0 (X11; U; Linux i686; en-US) AppleWebKit/531.4 (KHTML, like Gecko)
然后,您可以使用PHP来检查这些用户代理字符串,以确定用户是否为搜索引擎。我经常使用类似于以下内容的东西:
$searchengines = array(
'Googlebot',
'Slurp',
'search.msn.com',
'nutch',
'simpy',
'bot',
'ASPSeek',
'crawler',
'msnbot',
'Libwww-perl',
'FAST',
'Baidu',
);
$is_se = false;
foreach ($searchengines as $searchengine){
if (!empty($_SERVER['HTTP_USER_AGENT']) and
false !== strpos(strtolower($_SERVER['HTTP_USER_AGENT']), strtolower($searchengine)))
{
$is_se = true;
break;
}
}
if ($is_se) { print('Its a search engine!'); }
您可以尝试使用用户代理字符串来检测它们。您可以在这里找到它们的列表:http://www.botsvsbrowsers.com/
搜索引擎倾向于使用单词 crawler 和 robot。
搜索引擎几乎是唯一访问robots.txt的互联网用户。
有一些已知的IP地址是机器人,例如GoogleBot。
Google Analytics 可以让您查看网站的爬行统计数据。