'yes'),$atts)); $fh = fopen(site_url() ."/mylogs.txt", "r"); $contents = ""; while(!feof($fh)){ $contents .= fread($fh, 8080); } fclose($fh); $str = ""; $showtime=date("md"); if($text == "yes") { $str.= "当天蜘蛛爬行记录:"; $str.= "
以下为国内常用蜘蛛。
"; } $mytmp = array(); //google $google = 0; if($text == "yes") $str.= "Google Spider: "; $mytmp = show_spider_result($showtime,$contents,"Googlebot\/",$text); $google += $mytmp[0]; $str.= $mytmp[1]; $mytmp = show_spider_result($showtime,$contents,"Googlebot-Image\/",$text); $google += $mytmp[0]; $str.= $mytmp[1]; $mytmp = show_spider_result($showtime,$contents,"Googlebot-Mobile\/",$text); $google += $mytmp[0]; $str.= $mytmp[1]; $mytmp = show_spider_result($showtime,$contents,"Feedfetcher-Google",$text); $google += $mytmp[0]; $str.= $mytmp[1]; // baidu $baidu = 0; if($text == "yes") $str.= "
Baidu Spider: "; $mytmp = show_spider_result($showtime,$contents,"Baiduspider\/",$text); $baidu += $mytmp[0]; $str.= $mytmp[1]; $mytmp = show_spider_result($showtime,$contents,"Baiduspider-image",$text); $baidu += $mytmp[0]; $str.= $mytmp[1]; //bing $bing = 0; if($text == "yes") $str.= "
bingbot Spider: "; $mytmp = show_spider_result($showtime,$contents,"bingbot\/",$text); $bing += $mytmp[0]; $str.= $mytmp[1]; $mytmp = show_spider_result($showtime,$contents,"msnbot-media\/",$text); $bing += $mytmp[0]; $str.= $mytmp[1]; //sogou $sogou = 0; if($text == "yes") $str.= "
Sogou Spider: "; $mytmp = show_spider_result($showtime,$contents,"Sogou web spider\/",$text); $sogou += $mytmp[0]; $str.= $mytmp[1]; //soso $soso = 0; if($text == "yes") $str.= "
Soso Spider: "; $mytmp = show_spider_result($showtime,$contents,"Sosospider\/",$text); $soso += $mytmp[0]; $str.= $mytmp[1]; if($text == "yes") $str.= "
以下为垃圾蜘蛛,可屏蔽抓取。
"; //jike $else = 0; if($text == "yes") $str.= "Jike Spider: "; $mytmp = show_spider_result($showtime,$contents,"JikeSpider",$text); $else += $mytmp[0]; $str.= $mytmp[1]; //easou if($text == "yes") $str.= "
Easou Spider: "; $mytmp = show_spider_result($showtime,$contents,"EasouSpider",$text); $else += $mytmp[0]; $str.= $mytmp[1]; //yisou if($text == "yes") $str.= "
YisouSpider:"; $mytmp = show_spider_result($showtime,$contents,"YisouSpider",$text); $else += $mytmp[0]; $str.= $mytmp[1]; if($text == "yes") $str.= "
YandexBot Spider: "; $mytmp = show_spider_result($showtime,$contents,"YandexBot\/",$text); $else += $mytmp[0]; $str.= $mytmp[1]; if($text == "yes") $str.= "
Mail.RU Spider: "; $mytmp = show_spider_result($showtime,$contents,"Mail.RU_Bot\/",$text); $else += $mytmp[0]; $str.= $mytmp[1]; if($text == "yes") $str.= "
AcoonBot Spider: "; $mytmp = show_spider_result($showtime,$contents,"AcoonBot\/",$text); $else += $mytmp[0]; $str.= $mytmp[1]; if($text == "yes") $str.= "
Exabot Spider: "; $mytmp = show_spider_result($showtime,$contents,"Exabot\/",$text); $else += $mytmp[0]; $str.= $mytmp[1]; if($text == "yes") $str.= "
spbot Spider: "; $mytmp = show_spider_result($showtime,$contents,"spbot\/",$text); $else += $mytmp[0]; $str.= $mytmp[1]; $str.= draw_canvas($google,$baidu,$bing,$sogou,$soso,$else); return $str; } function show_spider_result($time,$contents,$str,$text){ $count = array(); $count[0] = preg_match_all("/".$time."\d*\s\/\S*\s.*".$str."/",$contents,$mymatches); if($text == "yes") { $str = preg_replace("{\\\/}","",$str); $count[1].= "
蜘蛛类型=>".$str.": 爬行次数=".$count[0]; if($count[0] >0) { $tmp = substr($mymatches[0][$count[0]-1],4,6); $tmp = substr($tmp,0,2) .":" . substr($tmp,2,2) .":" .substr($tmp,4,2) ; $count[1].= " 最后爬行时间:". $tmp; } } return $count; } function draw_canvas($google,$baidu,$bing,$sogou,$soso,$else){ $tmp = $google + $baidu + $bing + $sogou + $soso + $else; if($tmp == 0) { return "

数据不足,无法生成分析图。

"; } $google2 = $google*100/$tmp; $baidu2 = $baidu*100/$tmp; $bing2 = $bing*100/$tmp; $sogou2 = $sogou*100/$tmp; $soso2 = $soso*100/$tmp; $else2 = $else*100/$tmp; $str.= "

蜘蛛爬行分析图:
"; $str.= "日期:" . date("Y-m-d"); $str.= "
蜘蛛一共爬行". $tmp . "次:
"; $str.= "
  • google:". $google ."次(". intval($google2) ."%)
  • "; $str.= "
  • baidu:". $baidu ."次(". intval($baidu2) ."%)
  • "; $str.= "
  • bing:". $bing ."次(". intval($bing2) ."%)
  • "; $str.= "
  • sogou:". $sogou ."次(". intval($sogou2) ."%)
  • "; $str.= "
  • soso:". $soso ."次(". intval($soso2) ."%)
  • "; $str.= "
  • else:". $else ."次(". (100 - intval($google2) - intval($baidu2) - intval($bing2) - intval($sogou2) - intval($soso2)) ."%)
  • "; $str.= "

    "; return $str; } add_shortcode('spiderlogs','get_spider_log'); //自动分析蜘蛛结束 ?>