当前位置:首页 » 引流推广 » 正文

小红书为什么老是出现滑块验证,小红书x-sign 算法分析

3121 人参与  2021年12月22日 14:37  分类 : 引流推广  评论

小红书 小程序爬虫 小红书爬虫

小红书是有 APP 和 小程序两个入口。今天介绍小红书小程序的爬虫。
主要流程是以下几步
.搭建抓包环境.抓包分析
.模拟构造请求
. 大规模验证
. 小红书滑块解决


搭建抓包环境


这里不多说,我主要使用 IOS 手机 charles 。有时候也会使用 mitmproxy。
基本上就是证书安装,还有 ios 信任证书, 就可以抓到 HTTPS 的包了。有时间详细介绍下。
特别提示 mitmproxy 有一个定制代码功能。mitmdump 这个非常好用。可以在代码里面进行中间数据串改。


抓包分析



第一步配置好抓包环境后,第二步就是抓包了。在微信里面搜索小红书小程序,然后打开。
下面就是看到的内容。这里选了旅行的 tag。

小红书x-sign 算法分析



点开任意一篇文章进行抓包,这里我们点击右上角的美女(我就喜欢美女嘿嘿)。
在 charles 中查看访问的链接。下图就可以看到请求的链接和返回的数据了。


小红书x-sign 算法分析



进行测试:在链接上右键,Copy cURL Reqest 就可以得到 curl 的请求。复制到 iterm 中执行就可以得到数据了。

小红书x-sign 算法分析



这只是单一的一个数据验证。没问题了。接下来就是小规模验证数据。
上面的图,中间有两个标红的地方需要特别关注,第一个是 x-sign 第二个是我打码的 authorization 。


模拟构造请求



模拟构造请求的时候,就需要关注上一步的 x-sign 和 authorization。authorization 是固定的,每一个用户一个 authorization。相当于登录的 session。这个是不会变得。但是大量请求会出滑块。这个后面再说。接下来就是 x-sign 验证。
多抓包几个链接分析查看 x-sign 都是 为的,而且首位都是 X。那么很容易联想到 x-sign 就是 X+md 的结果。
既然是 md 就可以在代码所有请求里面搜索 md 。然后找到详细的位置分析后进行编码就行了。
这里分析到了详细的算法。算法实现方式也有了。详细的代码逻辑就不展示了。
大概就是 将所有参数组合再加上一个盐值(slat)进行 md. 最后在首位加上一个 X。(仅供交流,需要加feilang)。
获得上面两个参数后,接下来就是用代码进行模拟请求了。这个简单。python requests 一把梭验证 x-sign 没问题就行。


大规模验证


少量抓取没问题后,接下来就是大规模验证下。将相关接口都写完后
. 小红书进行搜索
. 搜索得到的笔记,进入笔记详情
. 查看笔记的评论
. 获取评论的用户信息
以上就是一个全链路循环。
代码完成后,开始抓取,结果跑了一会后,出现滑块了,程序错误。
滑块分析,这个过程比较难。折腾了很久才搞定。这里说一下大致原理。
. 模拟请求小红书滑块滑块接口
. 得到小红书滑块的图片
. 对小红书滑块图片进行处理,对颜色做处理,分析出滑块位置
. 使用 js 进行模式拖动,完成滑块的滑动动作。
. 对结果进行提交,并且轨道需要加密。
. 完成小红书滑块验证
通过上面的步骤就可以完成滑块处理了。然后又可以愉快的抓点数据了。当然如果量太大了估计也会对账号产生影响。不过目前我还没有遇到过。



本文链接:http://www.woshiqian.com/post/73060.html

百度分享获取地址:https://share.baidu.com/code
小红书为什么老是出现滑块验证  

我是钱微信/QQ:5087088

广告位、广告合作QQ:5087088

<< 上一篇 下一篇 >>

  • 评论(0)
  • 赞助本站

       

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。