在上个月,我创建了两个流行的 SEO 工具:Google Grabber 和 Yahoo Grabber。每个抓取器都转到各自的网站并检索指定域在搜索引擎中索引的页面数。如此快速、轻松地获得索引页数是非常宝贵的,也是一个很好的销售工具。
虽然 MSN Live Search 不是强大的搜索引擎/门户,但我想我会努力为 Microsoft 的搜索引擎整合一个。
PHP代码
/* return result number */
function get_msn_results($domain = 'davidwalsh.name')
{
// get the result content
$content = file_get_contents('http://search.msn.com/results.aspx?q=site%3A'.$domain);
// parse to get results
$pages = get_match('/id="count">(.*)</span>/isU',$content);
//explode, get rid of "of"
$pages = explode('of ',$pages);
$return['pages'] = $pages[1] ? $pages[1] : 0;
// return result
return $return;
}
/* helper: does the regex */
function get_match($regex,$content)
{
preg_match($regex,$content,$matches);
return $matches[1];
}
用法
$domains = array('davidwalsh.name','digg.com','msn.com','cnn.com','dzone.com','some-domain-that-doesnt-exist.com');
foreach($domains as $domain)
{
$result = get_msn_results($domain);
echo $domain,': ',$result['pages'],'<br />';
}
//davidwalsh.name: 431
//digg.com: 9,610,000
//msn.com: 28,100,000
//cnn.com: 17,100,000
//dzone.com: 138,000
//some-domain-that-doesnt-exist.com: 0
