以前分享过类似的代码,但是没有做出注释,并且部分代码有累赘,所以重新分享一下,下面是完整代码:
//记录搜索引擎爬行记录 $searchbot = get_naps_bot();
if ($searchbot) { $tlc_thispage = addslashes($_SERVER['HTTP_USER_AGENT']); //首先读取UA并小写处理 $url = $_SERVER['HTTP_REFERER']; //输出URL $file = WEB_PATH.'robotslogs.txt'; //这里设置蜘蛛记录文件的路径及文件名 $date = date('Y-m-d H:i:s'); //输出时间 $data = fopen($file,'a'); //调用文本 fwrite($data,"Time:$date robot:$searchbot URL:$tlc_thispage/r/n"); //这里进行蜘蛛输出 fclose($data); }
WEB_PATH为index.php下define的根目录路径,意思就是说robotslogs.txt文件是放在根目录下的。
通过get_naps_bot()获取蜘蛛爬行记录,然后在通过addslashes处理一下,将数据存储于变量$tlc_thispage中。
fopen打开robotslogs.txt文件,将数据通过函数fwrite写入,在通过函数fclose关闭就可以了。
多搜索引擎的蜘蛛记录代码
支持如下的搜索引擎:Baidu,Google,Bing,Yahoo,Soso,Sogou,Yodao爬行网站的记录!
<?php /** * 获取搜索引擎爬行记录 * edit by www.jb51.net */ function get_naps_bot() { $useragent = strtolower($_SERVER['HTTP_USER_AGENT']); if (strpos($useragent, 'googlebot') !== false){ return 'Google'; } if (strpos($useragent, 'baiduspider') !== false){ return 'Baidu'; } if (strpos($useragent, 'msnbot') !== false){ return 'Bing'; } if (strpos($useragent, 'slurp') !== false){ return 'Yahoo'; } if (strpos($useragent, 'sosospider') !== false){ return 'Soso'; } if (strpos($useragent, 'sogou spider') !== false){ return 'Sogou'; } if (strpos($useragent, 'yodaobot') !== false){ return 'Yodao'; } return false; } function nowtime(){ $date=date("Y-m-d.G:i:s"); return $date; } $searchbot = get_naps_bot(); if ($searchbot) { $tlc_thispage = addslashes($_SERVER['HTTP_USER_AGENT']); $url=$_SERVER['HTTP_REFERER']; $file="www.jb51.net.txt"; $time=nowtime(); $data=fopen($file,"a"); fwrite($data,"Time:$time robot:$searchbot URL:$tlc_thispage\n"); fclose($data); } ?>
总结
以上所述是小编给大家介绍的php记录搜索引擎爬行记录,希望对大家有所帮助,如果大家有任何疑问请在文章下方留言,看到会及时回复大家的。
本站所有内容仅限用于学习和研究目的,程序仅供本地断网测试,转载请说明出处!
站群SEO » php记录搜索引擎爬行记录的实现代码
站群SEO » php记录搜索引擎爬行记录的实现代码