Home > php教程 > php手册 > php抓取百度快照、百度收录、百度热词程序代码,抓取百度快照

php抓取百度快照、百度收录、百度热词程序代码,抓取百度快照

WBOY
Release: 2016-06-13 08:45:06
Original
1131 people have browsed it

php抓取百度快照、百度收录、百度热词程序代码,抓取百度快照

<?<br />/*<br />抓取百度收录代码<br />*/<br />function baidu($s){<br />  $baidu="http://www.baidu.com/s?wd=site%3A".$s;<br />  $site=file_get_contents($baidu);<br />  //$site=iconv("gb2312", "UTF-8", $site);<br />  ereg("找到相关网页(.*)篇,", $site,$count);<br />  $count=str_replace("找到相关网页","",$count);<br />  $count=str_replace("篇,","",$count);<br />  $count=str_replace("约","",$count);<br />  $count=str_replace(",","",$count);<br />  return $count[0];<br />}<br /><br />echo baidu(www.hzhuti.com); //获取好主题在百度中的收录数量<br /><br />?>
Copy after login



获取百度的热词

<?php <br />/** <br />* * @user 小杰 <br />* @return array 返回百度的热词数据(数组返回) <br />*/ <br />function getBaiduHotKeyWord() <br />{ <br />$templateRss = file_get_contents('http://top.baidu.com/rss_xml.php?p=top10'); <br />If (preg_match('/<table>(.*)</table>/is', $templateRss, $_description)) { <br />$templateRss = $_description [0]; <br />$templateRss = str_replace("&", "&", $templateRss); <br />} <br />$templateRss = "<?xml version="1.0" encoding="GBK"?>" . $templateRss; <br />$xml = simplexml_load_String($templateRss); <br />foreach ($xml->tbody->tr as $temp) { <br />if (!empty ($temp->td->a)) { <br />$keyArray [] = trim(($temp->td->a)); <br />} <br />} <br />return $keyArray; <br />} <br />print_r(getBaiduHotKeyWord());
Copy after login



这是在网上找的 稍微修改了下 将下面代码写入php文件
百度收录和百度快照时间

<?php<br />    $domain = &ldquo;http://www.hzhuti.com/nokia/5230/ *欲查询的域名*/<br />    $site_url = &lsquo;http://www.baidu.com/s?wd=site%3A&rsquo;;<br />    $all = $site_url.$domain; /*域名所有收录的网址*/<br />    $today = $all.&rsquo;&lm=1&prime;;    /*域名今日收录的网址*/<br />    $utf_pattern = &ldquo;/找到相关结果数(.*)个/&rdquo;;<br />    $kz_pattern = &ldquo;/<span class=&rdquo;g&rdquo;>(.*)</span>/&rdquo;; /*用以匹配快照日期的字符串*/<br />    $times = &ldquo;/d{4}-d{1,2}-d{1,2}/&rdquo;; /*匹配快照日期的正则表达式,如:2011-8-4*/<br />    $s0 = @file_get_contents($all);    /*将site:www.ninthday.net的网页置入$s0字符串中*/<br />    $s1 = @file_get_contents($today);<br />    preg_match($utf_pattern,$s0,$all_num); /*匹配&rdquo;找到相关结果数*个&rdquo;*/<br />    preg_match($utf_pattern,$s1,$today_num);<br />    preg_match($kz_pattern,$s0,$temp);<br />    preg_match($times,$temp[0],$screenshot);<br />    if($all_num[1] == &ldquo;&rdquo;)<br />        $all_num[1] = 0;<br />    if($today_num[1] == &ldquo;&rdquo;)<br />        $today_num[1] = 0;<br />    if($screenshot[0] == &ldquo;&rdquo;)<br />        $screenshot[0] = &ldquo;暂无快照&rdquo;;<br />?><br /><html><br />    <head><br />    <title>Test</title><br />    </head><br /><body><br />  <table><br />    <tr><br />      <td>日期</td><td>百度收录</td><td>百度今日收录</td><td>百度快照日期</td><br />    </tr><br />    <tr><br />      <td><?php echo date(&lsquo;m月d日G时&rsquo;);?> </td><td><?php echo $all_num[1]; ?></td><td><?php echo $today_num[1]; ?></td><td><?php echo $screenshot[0]; ?></td><br />    </tr><br /><br />  </table><br />    <p>百度收录:<a href=&rdquo;<?php echo $all; ?>&rdquo; target=&rdquo;_blank&rdquo;><?php echo $all_num[1]; ?></a></p><br />    <p>百度今日收录:<a href=&rdquo;<?php echo $today; ?>&rdquo; target=&rdquo;_blank&rdquo;><?php echo $today_num[1]; ?></a></p><br />    <p>百度快照日期:<a href=&rdquo;<?php echo $all; ?>&rdquo;><?php echo $screenshot[0]; ?></a></p><br /></body><br /></html>
Copy after login



 

上面的方法未经过严格考虑,如果服务器不支持file_get_contents函数我们就无法操作了,所以还可以利用curl操作,这个更方便可以模仿用户哦。

Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Recommendations
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template