php改良判断网站是否被百度收录
http://www.jb51.net/article/46430.htm
作者很娴熟的运用curl来对网站是否被百度收录做出了判断,但是同样存在代码过于冗长的缺点,我冒昧的进行了改进:
原:
<?php /* * 检测百度是否收录网页 curl模式 * @ param string $url传入的url * return int (1 收录 0 不收录) */ function checkBaidu($url){ $url='http://www.baidu.com/s?wd='.$url; $curl=curl_init(); curl_setopt($curl,CURLOPT_URL,$url); curl_setopt($curl,CURLOPT_RETURNTRANSFER,1); $rs=curl_exec($curl); curl_close($curl); $arr=parse_url($url); if(strpos($arr['query'],'http://')){ $arr['query']=str_replace('http://','',str_replace('wd=','',$arr['query'])); }else{ $arr['query']=str_replace('wd=','',$arr['query']); } if(strpos($arr['query'],'?')){ $str=strstr($arr['query'],'?'); $arr['query']=str_replace($str,'',$arr['query']); } if(strpos($arr['query'],'/')){ $narr=explode('/',$arr['query']); $arr['query']=$narr[0]; } if(strpos($rs,'<b>'.$arr['query'].'</b>')){ return 1; }else{ return 0; } } echo checkBaidu('http://www.jb51.net/'); ?>
改:
<?php function checkbaidu($url) { $str=file_get_contents("http://wap.baidu.com/s?word=inurl:".$url);//加快速度,用WAP网页来进行搜索,并且应用搜索引擎的inurl语法 if(stripos($str,"抱歉,没有找到"))return 0;//如果出现关键字则判定没有找到 return 1; } echo checkbaidu("aaaaas.cc"); ?>
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。