要判斷一個(gè)訪(fǎng)問(wèn)者是搜索搜索否為搜索引擎蜘蛛,可以通過(guò)檢查其ヽ(′▽?zhuān)?/`HTTP_USER_AGENT`字符串來(lái)實(shí)現。引擎引擎以下是主包一個(gè)簡(jiǎn)單而有效的方法:
```php
functio(/ω\)n( ?ヮ?) isCrawler() {
$useragent = strtolower($_SERVER['HTTP_USER_AGENT']);
$spiderSites = array(
'g(╬?益?)ooglebot', 'bingbot', 'yandexbot', 'baiduspide(′▽?zhuān)?r', 'sogou web spider', 'y( ?° ?? ?°)ahoo! slurp',
'msnbot', 'ia_archiver', 'crawler', 'spider'
);
foreach ($spid(//ω//)erSites as $spider) {
if (strpos($useragent, $spider) !== false) {
return true;
}
}
return false;
}
if (isCrawler()) {
// 是搜索引擎蜘蛛
echo "This is a search engine spider.";
} else {
// 是普通用戶(hù)
echo "This is a normal user.";
}
```
解釋
`$_SERVER['HTTP_USER_AGENT']`(′?`*)包含了訪(fǎng)問(wèn)者的瀏??覽器信息,包括是部分否是搜索引擎蜘蛛。
創(chuàng )建一個(gè)包含常見(jiàn)搜索引擎蜘蛛(′?ω?`)名稱(chēng)???的判斷數組`$spiderSites`。
遍歷`$spiderSites`數組,搜索搜索使用`strpos`函數檢查`$??useragent`中是引擎引擎否包含這些蜘蛛的名稱(chēng)。
如果找到匹配項,主包則返回`true`,部分(fen)表示是判斷搜索引擎蜘蛛。
根據`isCrawler`函數的搜索搜索返回值,輸出相應的引擎引擎信息。
注意事項
更新蜘蛛列表:
考慮其他因素:
有些蜘蛛(′?_?`)可能會(huì )偽裝成普通用戶(hù),判斷或者使用不同的用戶(hù)代理字符串,因此這種方法可能不是100%準確。
通過(guò)這種方法,你可以有效地判斷訪(fǎng)問(wèn)者是否為搜索引擎蜘蛛,并根據需要采取相應的操作(zuo)。
電話(huà):17709881867
網(wǎng) 址:http://www.hunqingrc.com/
地 址:上海市閔行66號