这个东西嘞,网上有好多的工具啥的。比如买链帮手啥的都可以用来查询自己的链接或者文章是否被百度或者360等等收录。然而我研究这个东西呢,是因为公司内部需要大量使用这个功能,用工具的话,它收费先不说,速度啊什么的都没有一个保障。当然啦,也有好的。不过再怎么说也不如自己的方便好用是吧。咱们废话不多说直接来看原理。
一开始呢?我也有在网上查找过一些资料。怎么说呢?大体就是拿着你的文章标题或者那个什么链接到搜索引擎里去查询。能搜索到东西当然好。就代表你的文章被收录了。没有搜索到就算是没有被收录。基于这个原理呢,咱们做技术的就敏锐的感觉到,最重要的是在搜索引擎里查询这一步。
然后嘞,我们就来看如何在百度搜索引擎里查询。先把代码贴上:
function getItem($word){ $url = "http://www.baidu.com/s?wd=".$word; // 构造包头,模拟浏览器请求 $header = array ( "Host:www.baidu.com", "Content-Type:application/x-www-form-urlencoded",//post请求 "Connection: keep-alive", 'Referer:http://www.baidu.com', 'User-Agent: Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; WOW64; Trident/5.0; BIDUBrowser 2.6)' ); $ch = curl_init (); curl_setopt ( $ch, CURLOPT_URL, $url ); curl_setopt ( $ch, CURLOPT_HTTPHEADER, $header ); curl_setopt ( $ch, CURLOPT_RETURNTRANSFER, 1 ); $content = curl_exec ( $ch ); if ($content == FALSE) { echo "error:" . curl_error ( $ch ); } curl_close ( $ch ); return $content; }
这个方法主要就是模拟header头部访问百度的搜索引擎。你只需要传入需要查询的标题或者链接等等,就可以获得返回结果。至于之后怎么判断这个结果里是否有你想要的东西。嘿嘿,我不知道啊。。。
好啦,分享就到这里了。看来我骨子里还是一个搞PHP的小白啊。。。如果感觉不错的话,请多多点赞支持哦。。。