手游村

 找回密码
 立即注册
查看: 49|回复: 0

如何用PHP判断你的文章/网址是否被百度搜索引擎收录?

[复制链接]

28

主题

0

回帖

111万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1110579
发表于 7 天前 | 显示全部楼层 |阅读模式
如何用PHP判断你的文章/网址是否被百度搜索引擎收录?



其实最简单的办法就是手动复制网址直接百度回车搜索,然后看搜索结果即可。不过这种方法仅仅适合于一次性的查看,如果需要检测大批量的网址是否被百度收录,这种方法真的会累死人。
但是我们可以用程序来解决这个重复的检测工作,刚好我今天就用PHP实现了这个功能点,所以就用这篇文章整理记录,顺便分享出来。

比如我们需要判断“网址1”和“网址2”和“网址3”这三个网址是否被百度搜索引擎收录,只需要逐一手动复制网址到百度搜索框,然后回车搜索即可。

网址1的搜索结果,从搜索结果我们可以看出,该网址已经被百度收录了。
QQ截图20241116023948.jpg
网址2的搜索结果,从搜索结果我们可以看出,该网址还没有被百度收录,而且搜索结果中出现了“没有找到该URL”这个关键字。
下载.png
网址3的搜索结果,从搜索结果我们可以看出,该网址也没有被百度收录,且搜索结果中出现了“抱歉没有找到”,“请检查您的输入是否正确”,“网页未收录”等关键字。
QQ截图20241116024057.jpg


判断原理已经有了,就是看搜索结果。如果搜索结果中有“没有找到该URL”,“抱歉没有找到”,“请检查您的输入是否正确”,“网页未收录”这4个关键字中的一个,那么基本上就可以确定这个网址还没有被百度收录。
--------------------------
实现思路就是先通过分析百度搜索结果的链接地址得出需要采集的目标URL的地址结构,然后使用CURL去采集目标URL地址的结果,再通过strpos()这个函数来判断采集的结果中有没有包含上面提到的4个关键字,如果有的话,那就说明该网址还没有被收录,如果没有的话,就说明该网址已经被百度收录了。



<?php
function checkBaiduInclude($url){
    $url = 'http://www.baidu.com/s?wd='.$url;
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL, $url);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    $result = curl_exec($ch);
    curl_close($ch);
    if(strpos($result, '没有找到该URL')){
        return 0;
    }elseif(strpos($result, '抱歉没有找到')){
        return 0;
    }elseif(strpos($result, '请检查您的输入是否正确')){
        return 0;
    }elseif(strpos($result, '网页未收录')){
        return 0;
    }else{
        return 1;
    }
}

$url = "http://www.17147.com";
if(checkBaiduInclude($url) == 1){
    var_dump("该网页已经被百度收录了");
}else{
    var_dump("该网页还没有被百度收录");
}

------------------------------------------------------
其他搜索引擎同理~!


回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|手游村

GMT+8, 2024-11-23 20:37 , Processed in 0.021816 second(s), 21 queries .

 All Rights Reserved.  <本平台游戏产品适合18岁以上成年人使用> 访问日志

Powered by Discuz! X3.4 本站所有软件信息来自互联网,版权归原著所有。如有侵权,敬请来信告知,我们将及时撤销

快速回复 返回顶部 返回列表