怎么用PHP实现检测网站文章是否被收录

用PHP实现对文章进行收录检测的代码,这个功能很方便,像是一些站长需要每天发布原创文章,并且需要每天来关注文章是否被百度收录,所着时间的增长,文章的增多,如果再手动一个一个去搜索,无疑这样是很麻烦的,那么如果有个方法来自动判断文章是否被收录,是不是就简单很多了?这里寻梦资源网就说一下这个PHP代码来实现自动检测是否收录。

实现原理

其中的原理很简单:就是在百度搜索要检测的网址,利用PHP程序代码对返回的HTML结果页进行抓取,通过分析HTML代码判断网页是否被收录。

分析

通过百度搜索引擎搜索来的结果通常分为如下两种情况(当然还有其它结果):

1.百度为您找到相关结果约*个:
php检测文章是否收录_寻梦资源网
php判断是否收录

这是正常收录结果;

2.很抱歉,没有找到与“*”相关的网页。
php检测文章是否收录_寻梦资源网
php判断是否收录

这是没有被收录的结果。

那么通过上面发现很明显的对比,页面包含“很抱歉,没有找到”样式的字符就说明,这页面并没有被百度收录。最初以为这样就能百分百准确了,实际上还有另外几种情况也是没有收录:

1.没有返回值,只存在百度为您找到相关结果约0个

2.出现“没有找到相关URL”字样,并返回多个相似结果

目前没有发现其它样式,那么这样就完美解决之前不是百分百准确的问题了(强迫症和朋友一气测试全站)。

代码

```function BaiDuSite($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,'为您找到相关结果约0个') === false && strpos($rs,'没有找到') === false && strpos($rs,'没有找到该URL') === false){
        return 0;//已收录
    }else{
        return 1;//未收录
    }
}```

注:$url参数为要检测的网址,0表示已收录,1表示未收录。
转自:https://www.xunmzy.com/technical/402.html

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值