php获取百度收录、百度热词及百度快照的方法
本文实例讲述了php获取百度收录、百度热词及百度快照的方法。分享给大家供大家参考。具体如下:
获取百度收录:
<?php
/*
抓取百度收录代码
*/
functionbaidu($s){
$baidu="http://www.baidu.com/s?wd=site%3A".$s;
$site=file_get_contents($baidu);
//$site=iconv("gb2312","UTF-8",$site);
ereg("找到相关网页(.*)篇,",$site,$count);
$count=str_replace("找到相关网页","",$count);
$count=str_replace("篇,","",$count);
$count=str_replace("约","",$count);
$count=str_replace(",","",$count);
return$count[0];
}
echobaidu(www.nhooo.com);
//获取毛票票在百度中的收录数量
?>
获取百度的热词
<?php
/**
*@returnarray返回百度的热词数据(数组返回)
*/
functiongetBaiduHotKeyWord()
{
$templateRss=file_get_contents('http://top.baidu.com/rss_xml.php?p=top10');
if(preg_match('/<table>(.*)<\/table>/is',$templateRss,$_description)){
$templateRss=$_description[0];
$templateRss=str_replace("&","&",$templateRss);
}
$templateRss="<?xmlversion=1.0encoding=GBK?>".$templateRss;
$xml=@simplexml_load_String($templateRss);
foreach($xml->tbody->tras$temp){
if(!empty($temp->td->a)){
$keyArray[]=trim(($temp->td->a));
}
}
return$keyArray;
}
print_r(getBaiduHotKeyWord());
这是在网上找的稍微修改了下将下面代码写入php文件
百度收录和百度快照时间
<?php
$domain="https://www.nhooo.com/";*欲查询的域名*/
$site_url='http://www.baidu.com/s?wd=site%3A';
$all=$site_url.$domain;/*域名所有收录的网址*/
$today=$all.'&lm=1';/*域名今日收录的网址*/
$utf_pattern="/找到相关结果数(.*)个/";
$kz_pattern="/<spanclass="g">(.*)</span>/";/*用以匹配快照日期的字符串*/
$times="/d{4}-d{1,2}-d{1,2}/";/*匹配快照日期的正则表达式,如:2011-8-4*/
$s0=@file_get_contents($all);/*将site:www.nhooo.com的网页置入$s0字符串中*/
$s1=@file_get_contents($today);
preg_match($utf_pattern,$s0,$all_num);/*匹配"找到相关结果数*个"*/
preg_match($utf_pattern,$s1,$today_num);
preg_match($kz_pattern,$s0,$temp);
preg_match($times,$temp[0],$screenshot);
if($all_num[1]=="")
$all_num[1]=0;
if($today_num[1]=="")
$today_num[1]=0;
if($screenshot[0]=="")
$screenshot[0]="暂无快照";
?>
<html>
<head>
<title>Test</title>
</head>
<body>
<table>
<tr>
<td>日期</td><td>百度收录</td><td>百度今日收录</td><td>百度快照日期</td>
</tr>
<tr>
<td><?phpechodate('m月d日G时');?></td><td>
<?phpecho$all_num[1];?></td><td>
<?phpecho$today_num[1];?></td><td>
<?phpecho$screenshot[0];?></td>
</tr>
</table>
<p>百度收录:<ahref="<?phpecho$all;?>"target="_blank">
<?phpecho$all_num[1];?></a></p>
<p>百度今日收录:<ahref="<?phpecho$today;?>"target="_blank">
<?phpecho$today_num[1];?></a></p>
<p>百度快照日期:<ahref="<?phpecho$all;?>">
<?phpecho$screenshot[0];?></a></p>
</body>
</html>
希望本文所述对大家的php程序设计有所帮助。