PHP实现抓取迅雷VIP账号的方法
2015-07-30 09:31
886 查看
看了@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程序设计有所帮助。
您可能感兴趣的文章:
相关文章推荐
- 一个关于if else容易迷惑的问题
- PHP5.2.*防止Hash冲突拒绝服务攻击的Patch
- 深入理解PHP之匿名函数
- JSP/PHP基于Ajax的分页功能实现
- 关于PHP通过PDO用中文条件查询MySQL的问题。
- 什么是设计模式
- PHP数据库长连接mysql_pconnect的细节
- Php Installing An Expansion
- PHP+Apache在Windows 9x下的安装和配置
- IIS 6 的 PHP 最佳配置方法
- 安装Apache和PHP的一些补充
- Linux Apache+MySQL+PHP
- 建立Apache+PHP+MySQL数据库驱动的动态网站
- PHP 5.3.0 安装分析心得
- apache 环境下 php 的配置注意事项
- C#利用Windows自带gdi32.dll实现抓取屏幕功能实例
- Winform实现抓取web页面内容的方法
- ASP.NET、ASP、PHP、JSP之间有什么区别?
- PHP VBS JS 函数 对照表