php抓取网页程序( PHP结合fiddler抓包工具获取请求内容的几个实例讲述了)

优采云 发布时间: 2021-11-19 13:23

  php抓取网页程序(

PHP结合fiddler抓包工具获取请求内容的几个实例讲述了)

  PHP配合fiddler抓包抓取微信索引小程序数据

  本文通过一个例子来说明PHP如何配合fiddler抓取微信索引小程序的数据。

  这两天研究了微信索引。抓取,按照大体思路,就是使用fiddler抓取手机包,然后解析获取地址,然后请求。

  你这么想是对的。如果果断去做,那就太阳太简单了。可以看到,微信抓取有以下几个步骤:

  1、开始登录小程序

  2、获取访问所需的token

  3、然后用这个token来获取数据

  第一个难点是小程序的登录步骤。您必须先登录微信才能访问小程序,因为小程序是基于微信运行的。因此,登录时需要使用微信内部生成的js_code的值。光是这一步,就是一个没有底的大坑。

  嗯,在概率为十亿分之一的情况下,你得到这个值,然后你得到search_key的值,还有一个UNIX时间戳。

  完成后,您可以随心所欲地获取所需的数据吗?? ? ? ? ?

  作为一个青少年,你仍然需要保持专注。. . 微信有访问限制系统。当请求某个频率时,会提示频繁操作。所以在你努力之后,仍然没有真正的结果。

  网上有一个解决方案,就是用Lua语言配合触摸精灵写一个操作微信的脚本,类似于自动抢红包。用这个脚本完成后自动输入关键词进行查询,然后使用抓包工具获取这些请求的内容。

  不清楚使用抓包工具获取请求内容的可以参考:

  更不用说这个方案的成功率了。先说效率。有没有可能如果你这样做,微信就不会限制你的请求?? ?

  还有学习语言的各种成本。. .

  因此,我使用PHP结合fiddler抓包工具设计了一个简单易学的数据抓包程序。让我一一来:

  首先是配置fiddler,将捕获的数据保存在本地。

  参考链接:

  这用于获取访问令牌。PHP核心代码如下:

  function get_search_key($path)

{

$file = fopen($path, "r");

$user=array();

$i=0;

while(! feof($file))

{

$user[$i]= mb_convert_encoding ( fgets($file), 'UTF-8','Unicode');

$i++;

}

fclose($file);

$user=array_filter($user);

foreach ($user as $item_u => $value_u) {

if(strstr($value_u,"search_key=")){

$temp[] = $value_u;

}

}

$end_url = end($temp);

$reg = "#openid=[a-zA-Z0-9]++_[a-zA-Z0-9]++&search_key=\d++_\d++#isU";

preg_match_all($reg,$end_url,$time);

return $time[0][0];

}

  输入保存的文件的地址,获取返回值,拿这个返回值进行请求,就可以得到你想要的数据了。

  不过,这东西也有缺陷。首先是配置手机连接电脑。关于这一点,我会在后面的评论中补充。接下来是配置 fiddler 将包保存到本地文件。还需要手机访问小程序后,程序才能成功运行。有点难。

  更多对PHP相关内容感兴趣的读者可以查看本站专题:《php socket使用总结》、《php字符串(string)用法总结》、《PHP数学运算技巧总结》、《php面向对象编程入门教程》 》、《PHP数组(数组)操作技巧》、《PHP数据结构与算法教程》、《PHP编程算法总结》、《PHP网络编程技巧总结》

  我希望这篇文章对你的 PHP 编程有所帮助。

  下一节:详解基于Laravel框架路由的PHP编程技术

  本文介绍了 Laravel5.1 框架路由的基础知识。什么是路由?路由是用户访问我们程序的入口点,例如:在浏览器中输入:会打开一个页面,我们收到这个请求后...

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线