Maison  >  Article  >  développement back-end  >  Comment explorer les pages Baidu et les chaînes correspondantes en php

Comment explorer les pages Baidu et les chaînes correspondantes en php

墨辰丷
墨辰丷original
2018-06-11 17:36:061528parcourir

Cet article présente principalement la méthode de php pour obtenir Baidu inclus, les mots chauds Baidu et les instantanés Baidu. Il analyse les techniques de php pour capturer les pages Baidu et l'analyse des chaînes correspondantes avec des exemples. il peut s'y référer.

L'exemple de cet article décrit comment obtenir Baidu inclus, les mots chauds Baidu et les instantanés Baidu en PHP. Les détails sont les suivants :

Soyez inclus dans Baidu :

<?php
/*
抓取百度收录代码
*/
function baidu($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];
}
echo baidu(www.jb51.net);
 //获取脚本之家在百度中的收录数量
?>

Obtenez les mots chauds de Baidu

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

C'est ce que j'ai trouvé sur Internet que j'ai modifié. légèrement et j'ai écrit le code suivant. Entrez le fichier php
Baidu inclus et l'heure de l'instantané Baidu

<?php
 $domain = "//www.jb51.net/"; *欲查询的域名*/
 $site_url = &#39;http://www.baidu.com/s?wd=site%3A&#39;;
 $all = $site_url.$domain; /*域名所有收录的网址*/
 $today = $all.&#39;&lm=1&#39;; /*域名今日收录的网址*/
 $utf_pattern = "/找到相关结果数(.*)个/";
 $kz_pattern = "/<span class="g">(.*)</span>/"; /*用以匹配快照日期的字符串*/
 $times = "/d{4}-d{1,2}-d{1,2}/"; /*匹配快照日期的正则表达式,如:2011-8-4*/
 $s0 = @file_get_contents($all); /*将site:www.jb51.net的网页置入$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><?php echo date(&#39;m月d日G时&#39;);?> </td><td>
  <?php echo $all_num[1]; ?></td><td>
  <?php echo $today_num[1]; ?></td><td>
  <?php echo $screenshot[0]; ?></td>
 </tr>
 </table>
 <p>百度收录:<a href="<?php echo $all; ?>" target="_blank">
 <?php echo $all_num[1]; ?></a></p>
 <p>百度今日收录:<a href="<?php echo $today; ?>" target="_blank">
 <?php echo $today_num[1]; ?></a></p>
 <p>百度快照日期:<a href="<?php echo $all; ?>">
 <?php echo $screenshot[0]; ?></a></p>
</body>
</html>

Résumé  : Ce qui précède est tout le contenu de cet article, j'espère. cela sera utile à l’étude de chacun.

Recommandations associées :

Comment implémenter la traversée de tableaux multidimensionnels et la suppression non définie en php

php implémentation des astuces pour copier et déplacer des fichiers

méthode php pour capturer les comptes Thunder VIP basées sur la classe de collection Snoopy

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn