本文实例讲述了PHP实现抓取迅雷VIP账号的方法。分享给大家供大家参考。具体如下:
看了@Jinn_Wei Python版本的抓取账号,于是顺手写了个PHP版本
PS1:代码没经过优化,只实现了基本的功能
PS2:代码中使用了Snoopy
PS3:测试
<?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 />'; }
希望本文所述对大家的php程序设计有所帮助。