php 判斷訪客是否為搜索引擎蜘蛛的函數(shù)代碼
更新時(shí)間:2011年07月29日 23:26:37 作者:
php 判斷訪客是否為搜索引擎蜘蛛的函數(shù)代碼。需要的朋友可以參考下。
復(fù)制代碼 代碼如下:
/**
* 判斷是否為搜索引擎蜘蛛
*
* @author Eddy
* @return bool
*/
function isCrawler() {
$agent= strtolower($_SERVER['HTTP_USER_AGENT']);
if (!empty($agent)) {
$spiderSite= array(
"TencentTraveler",
"Baiduspider+",
"BaiduGame",
"Googlebot",
"msnbot",
"Sosospider+",
"Sogou web spider",
"ia_archiver",
"Yahoo! Slurp",
"YoudaoBot",
"Yahoo Slurp",
"MSNBot",
"Java (Often spam bot)",
"BaiDuSpider",
"Voila",
"Yandex bot",
"BSpider",
"twiceler",
"Sogou Spider",
"Speedy Spider",
"Google AdSense",
"Heritrix",
"Python-urllib",
"Alexa (IA Archiver)",
"Ask",
"Exabot",
"Custo",
"OutfoxBot/YodaoBot",
"yacy",
"SurveyBot",
"legs",
"lwp-trivial",
"Nutch",
"StackRambler",
"The web archive (IA Archiver)",
"Perl tool",
"MJ12bot",
"Netcraft",
"MSIECrawler",
"WGet tools",
"larbin",
"Fish search",
);
foreach($spiderSite as $val) {
$str = strtolower($val);
if (strpos($agent, $str) !== false) {
return true;
}
}
} else {
return false;
}
}
網(wǎng)上倒是能搜到一大把,不過都是千篇一律的復(fù)制來復(fù)制去的,也不夠全面,我這里整理了一份比較全面的代碼:
復(fù)制代碼 代碼如下:
function is_spider(){
$robot = 0;
$USER_AGENT = strtolower($_SERVER['HTTP_USER_AGENT']);
if(strpos($USER_AGENT,"bot")) $robot = 1;
if(strpos($USER_AGENT,"spider")) $robot = 1;
if(strpos($USER_AGENT,"slurp")) $robot = 1;
if(strpos($USER_AGENT,"mediapartners-google")) $robot = 1;
if(strpos($USER_AGENT,"fast-webcrawler")) $robot = 1;
if(strpos($USER_AGENT,"altavista")) $robot = 1;
if(strpos($USER_AGENT,"ia_archiver")) $robot = 1;
if($robot == 1){
//do something
}
return '';
}
您可能感興趣的文章:
- PHP判斷是手機(jī)端還是PC端 PHP判斷是否是微信瀏覽器
- thinkphp判斷訪客為手機(jī)端或PC端的方法
- 在WordPress中使用PHP腳本來判斷訪客來自什么國(guó)家
- PHP中通過HTTP_USER_AGENT判斷是否為手機(jī)移動(dòng)終端的函數(shù)代碼
- 利用PHP判斷是手機(jī)移動(dòng)端還是PC端訪問的函數(shù)示例
- php函數(shù)實(shí)現(xiàn)判斷是否移動(dòng)端訪問
- php/asp/asp.net中判斷百度移動(dòng)和PC蜘蛛的實(shí)現(xiàn)代碼
- PHP判斷是否是微信打開還是瀏覽器打開的方法
- 通過JS和PHP兩種方法判斷用戶請(qǐng)求時(shí)使用的瀏覽器類型
- 使用PHP和JavaScript判斷請(qǐng)求是否來自微信內(nèi)瀏覽器
- PHP判斷訪客是否手機(jī)端(移動(dòng)端瀏覽器)訪問的方法總結(jié)【4種方法】
相關(guān)文章
PHP+MySQL之Insert Into數(shù)據(jù)插入用法分析
這篇文章主要介紹了PHP+MySQL之Insert Into數(shù)據(jù)插入用法,實(shí)例分析了php+mysql基于Insert Into語句實(shí)現(xiàn)數(shù)據(jù)插入的相關(guān)技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2015-09-09PHP接口多繼承及tarits實(shí)現(xiàn)多繼承效果的方法
這篇文章主要介紹了PHP接口多繼承及tarits實(shí)現(xiàn)多繼承效果的方法,結(jié)合實(shí)例形式分析了php基于接口的多繼承及PHP5.4中引入的tarits實(shí)現(xiàn)多繼承功能簡(jiǎn)單操作技巧,需要的朋友可以參考下2018-01-01PHP 驗(yàn)證碼不顯示只有一個(gè)小紅叉的解決方法
做了個(gè)驗(yàn)證碼,但不知道怎么搞的,總出現(xiàn)一個(gè)如下圖的小紅叉,但驗(yàn)證碼就是顯示不出來,經(jīng)搜索發(fā)現(xiàn)個(gè)不錯(cuò)的方法,有類似情況的朋友可以參考下2013-09-09php setcookie(name, value, expires, path, domain, secure) 參數(shù)
本篇文章是對(duì)php setcookie(name, value, expires, path, domain, secure) 參數(shù)進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下2013-06-06解析用PHP實(shí)現(xiàn)var_export的詳細(xì)介紹
本篇文章是對(duì)使用PHP實(shí)現(xiàn)var_export的方法進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下2013-06-06完美解決令人抓狂的zend studio 7代碼提示(content Assist)速度慢的問題
本篇文章是對(duì)解決令人抓狂的zend studio 7代碼提示(content Assist)速度慢的問題進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下2013-06-06PHP實(shí)現(xiàn)文件下載斷點(diǎn)續(xù)傳詳解
這篇文章主要介紹了PHP實(shí)現(xiàn)文件下載斷點(diǎn)續(xù)傳詳解,本文講解了載斷點(diǎn)續(xù)傳的實(shí)現(xiàn)理解,并給出了實(shí)現(xiàn)代碼,需要的朋友可以參考下2014-10-10