当前位置:首页 > PHP教程 > php高级应用 > 列表

PHP实现抓取迅雷VIP账号的方法

发布:smiling 来源: PHP粉丝网  添加日期:2021-06-14 23:05:24 浏览: 评论:0 

这篇文章主要介绍了PHP实现抓取迅雷VIP账号的方法,实例分析了php基于采集类Snoopy实现页面抓取及正则匹配的相关技巧,具有一定参考借鉴价值,需要的朋友可以参考下。

本文实例讲述了PHP实现抓取迅雷VIP账号的方法。分享给大家供大家参考。具体如下:

看了@Jinn_Wei Python版本的抓取账号,于是顺手写了个PHP版本

PS1:代码没经过优化,只实现了基本的功能

PS2:代码中使用了Snoopy

PS3:测试地址:http://xunlei.kphcdr.com

  1. <?php 
  2. /** 
  3.  * 抓取爱密码迅雷VIP账号 
  4.  * @author kphcdr@163.com 
  5.  */ 
  6. header("Content-type: text/html; charset=UTF-8"); 
  7. include 'Snoopy.php'
  8. $url = 'http://www.521xunlei.com/forum-xunleihuiyuan-1.html'
  9. //找出匹配的网址 
  10. $snoopy = new Snoopy(); 
  11. $result = $snoopy->fetchlinks($url)->getResults(); 
  12. foreach($result as $key=>$val
  13.   if(FALSE === strpos($val'thread-')) 
  14.   { 
  15.     unset($result[$key]); 
  16.   } 
  17.   else 
  18.   { 
  19.     if(!strpos($val'-1-1.html')) 
  20.     { 
  21.       unset($result[$key]); 
  22.     } 
  23.   } 
  24. $real = new Snoopy(); 
  25. $result = array_values(array_unique($result)); 
  26. $text = $real->fetchtext($result[1])->getResults(); 
  27. $text = iconv('gbk','UTF-8//IGNORE',$text); 
  28. //匹配出需要的内容 
  29. $pattern = '/^迅雷会员账号|迅雷共享账号+[a-zA-Z0-9_]{4,15}+:+[0-9]+爱密码分享密码+[a-zA-Z0-9_]{4,20}\s/'
  30. preg_match_all($pattern,$text,$return); 
  31. foreach($return[0] as $a
  32.   echo $a
  33.   echo '<br />'
  34. }

Tags: PHP抓取迅雷VIP账号

分享到: