PHP判断网页是否被百度收录
函数代码:
<?php
function okBaidu($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);
if(!strpos($rs,'提交网址')){
echo "已收录";
}else{
echo "未收录";
}
}
?>
调用函数:
$url="http://#/6881.html";
echo okBaidu($url);
代码实现原理:
判断网页是否被百度收录,只需要在百度搜索引擎中搜索一下网页的网址即可,如果未被收录到,就会出现“提交网址”的链接。我们可以利用这一点来判断网页是否被百度收录。
1、组合百度搜索的网址,
百度搜索的网址,wd的参数可以是搜索的关键字
http://www.baidu.com/s?wd=
组合要被搜索的网页地址,如下
http://www.baidu.com/s?wd=http://#/6881.html
2、利用cURL抓取搜索页面的文档流
3、判断文档流中,是否含有“提交网址”的关键字,如果有则未被收录,如果没有则被收录
4、关于cURL使用方法,可以百度,也可以搜索本博客的相关文章
PHP判断网页是否被搜索引擎收录
根据以上的代码,做了一些改动,可以判断百度,360,搜狗,以及必应是否收录了要查询的网址
函数代码
<?php
function ifurl($s,$url){
$array = array(
'Baidu' => array('http://www.baidu.com/s?wd=','提交网址'),
'360' => array('https://www.so.com/s?q=','提交网址'),
'Bing' => array('https://cn.bing.com/search?q=',$url),
'Sogou' => array('https://www.sogou.com/web?query=','点击此处提交'),
);
$urls = $array[$s][0].$url;
$str = $array[$s][1];
$curl=curl_init();
curl_setopt($curl,CURLOPT_URL,$urls);
curl_setopt($curl,CURLOPT_RETURNTRANSFER,1);
$rs=curl_exec($curl);
curl_close($curl);
if(!strpos($rs,$str)){
return '已收录';
}else{
return '未收录';
}
}
?>
调用代码:
echo '百度:'.ifurl('Baidu','http://#/6881.html');
echo '360:'.ifurl('360','http://#/6881.html');
echo '必应:'.ifurl('Bing','http://#/6881.html');
echo '搜狗:'.ifurl('Sogou','http://#/6881.html');
转载请注明:有客帮 » php判断是否收录