本文介绍下,用php实现的查询百度收录、谷歌收录情况的一段代码,有需要的朋友参考下。
用php来查询百度或google的收录情况,其实并不复杂,只需要file下远程文件,然后分析相关数据即可。 以下是收录查询核心代码,getdetail函数也可以这样写,用正则去匹配: $wordf = preg_quote($wordf); $wordb = preg_quote($wordb); $pagecontent = @preg_replace("/\s*$wordf(.+?)$wordb\s*/e", "returndetail('\\1', '$type')", $pagecontent); $pagecontent = @preg_replace("/\s*".preg_quote($wordf)."(.+?)".preg_quote($wordb)."\s*/e", "returndetail('\\1', '$type')", $pagecontent); 完整代码: <?php /** * 查询百度与google的收录情况 * by bbs.it-home.org */ $seodetail = array(); $domain = !empty($_GET['q']) ? $_GET['q'] : 'www.mycodes.net'; baidudetail($domain); googledetail($domain); var_dump($seodetail); function baidudetail($domain) { $baidu_site = 'http://www.baidu.com/baidu?word=site%3A' . $domain; $baidu_link = 'http://www.baidu.com/baidu?word=link%3A' . $domain; $baidu_domain = 'http://www.baidu.com/baidu?word=domain%3A' . $domain; getdetail($baidu_site, 'baidu_site', '相关网页', '篇,用时'); getdetail($baidu_link, 'baidu_link', '相关网页', '篇,用时'); getdetail($baidu_domain, 'baidu_domain', '相关网页', '篇,用时'); } function googledetail($domain) { $google_site = 'http://www.google.cn/search?hl=zh-CN&q=site%3A' . $domain; $google_link = 'http://www.google.cn/search?hl=zh-CN&q=link%3A' . $domain; getdetail($google_site, 'google_site', '</b> 个结果,', ' 个。 (搜索用时'); getdetail($google_link, 'google_link', '<font size=-1>约有 <b>', '</b> 项链接到 <b>');//102 } function getdetail($url, $type, $wordf, $wordb) { $pagecontent = @file($url); $pagecontent = implode('', $pagecontent); $pagecontent = substr(strstr($pagecontent, $wordf), strlen($wordf)); $pagecontent = substr_replace($pagecontent, '', strpos($pagecontent, $wordb)); returndetail($pagecontent,$type); } function returndetail($content,$type) { global $seodetail; $seodetail[$type] = empty($content) ? 0 : $content; } ?> |