您的位置:首页 > 运维架构 > 网站架构

php改良判断网站是否被百度收录

2015-11-09 16:50 525 查看
在网上浏览php程序时 发现了这样一篇文章:php使用curl检测网页是否被百度收录的示例分享
http://www.jb51.net/article/46430.htm
作者很娴熟的运用curl来对网站是否被百度收录做出了判断,但是同样存在代码过于冗长的缺点,我冒昧的进行了改进:

原:

<span style="font-size:14px;"><?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/');
?></span>


改:
<span style="font-size:14px;"><?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");
?></span>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: