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

yipeiwu_com7年前PHP代码库

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

看了@Jinn_Wei Python版本的抓取账号,于是顺手写了个PHP版本
PS1:代码没经过优化,只实现了基本的功能
PS2:代码中使用了Snoopy
PS3:测试地址:http://xunlei.kphcdr.com

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

Snoopy-1.2.3.tar.gz点击此处本站下载。

希望本文所述对大家的php程序设计有所帮助。

相关文章

php中批量修改文件后缀名的函数代码

复制代码 代码如下:<?php function foreachDir($path){ $handle=opendir($path); if($handle){ while (fa...

php xml 入门学习资料

起因:   今天做项目时遇到一个问题:需要动态更新主页上的图片,以示本站不是做完了就算了,是有人一直在维护。好了,需求有了,如何实现?!   我的想法如下:   图片存放位置:放在一个文...

学习php设计模式 php实现命令模式(command)

学习php设计模式 php实现命令模式(command)

一、意图 将一个请求封装为一个对象,从而使用你可用不同的请求对客户进行参数化;对请求排队或记录请求日志,以及支持可撤消的操作。 可变的方面是:何时,怎样满足一个请求 命令模式是对命令的封...

php中最简单的字符串匹配算法

本文实例讲述了php中最简单的字符串匹配算法。分享给大家供大家参考。具体实现方法如下: 复制代码 代码如下:<?php /* 最简单字符串匹配算法php实现方式 &n...

浅析PHP安装扩展mcrypt以及相关依赖项(PHP安装PECL扩展的方法)

浅析PHP安装扩展mcrypt以及相关依赖项(PHP安装PECL扩展的方法)

一:Mcrypt简介Mcrypt是PHP的一个扩展,完成了常用加密算法的封装。其实该扩展是对mcrypt标准类库的封装,mcrypt完成了相当多的常用加密算法,如DES, TripleD...