Rumah  >  Artikel  >  pembangunan bahagian belakang  >  php基于采集类Snoopy实现抓取迅雷VIP账号的方法

php基于采集类Snoopy实现抓取迅雷VIP账号的方法

墨辰丷
墨辰丷asal
2018-06-08 09:49:442303semak imbas

本篇文章主要介绍php基于采集类Snoopy实现抓取迅雷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 &#39;Snoopy.php&#39;;
$url = &#39;http://www.521xunlei.com/forum-xunleihuiyuan-1.html&#39;;
//找出匹配的网址
$snoopy = new Snoopy();
$result = $snoopy->fetchlinks($url)->getResults();
foreach($result as $key=>$val)
{
  if(FALSE === strpos($val, &#39;thread-&#39;))
  {
    unset($result[$key]);
  }
  else
  {
    if(!strpos($val, &#39;-1-1.html&#39;))
    {
      unset($result[$key]);
    }
  }
}
$real = new Snoopy();
$result = array_values(array_unique($result));
$text = $real->fetchtext($result[1])->getResults();
$text = iconv(&#39;gbk&#39;,&#39;UTF-8//IGNORE&#39;,$text);
//匹配出需要的内容
$pattern = &#39;/^迅雷会员账号|迅雷共享账号+[a-zA-Z0-9_]{4,15}+:+[0-9]+爱密码分享密码+[a-zA-Z0-9_]{4,20}\s/&#39;;
preg_match_all($pattern,$text,$return);
foreach($return[0] as $a)
{
  echo $a;
  echo &#39;<br />&#39;;
}

总结:以上就是本篇文的全部内容,希望能对大家的学习有所帮助。

相关推荐:

php中ob函数缓冲机制

php针对文件的递归操作的方法

php结合session操作数据库的方法

Atas ialah kandungan terperinci php基于采集类Snoopy实现抓取迅雷VIP账号的方法. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn