爬取**websocket接口,自动抢聊天室红包

对某个**网站的聊天室进行监控,有红包就点击。

首先查看聊天室的界面长这样:
爬取**websocket接口,自动抢聊天室红包
思路:登录到聊天室,监控聊天消息,如果有红包,就进行请求
爬虫逻辑:这种聊天室滚动消息,一般是通过websocket消息发送,首先查看下websocket的消息
爬取**websocket接口,自动抢聊天室红包
在websocket下找到如下消息,这些数据可以推断出是base64加密的,复制到解密窗口可以发现
爬取**websocket接口,自动抢聊天室红包
已经找到了我们想要的数据。所以接下来需要登录到聊天室,同时不断接受数据就OK。
找到请求信息。发现登录到聊天室需要发送一个sid参数到服务器
爬取**websocket接口,自动抢聊天室红包
去请求网页查找,可以发现sid参数是js请求返回的
爬取**websocket接口,自动抢聊天室红包
这段js请求需要传递的参数为
爬取**websocket接口,自动抢聊天室红包
这里也有一个sid,和t参数需要传递,
继续查找sid和t
可以在前面的js中找到
爬取**websocket接口,自动抢聊天室红包
关键字t 我们通过断点调试查看到
爬取**websocket接口,自动抢聊天室红包
t是这样的来的,修改为python代码
爬取**websocket接口,自动抢聊天室红包
t参数和sid参数就都解决了.

重新整理思路

  • 登录该网站
  • 构造参数t,请求js得到sid
  • 再用t和sid去请求另一个js获取聊天室的sid
  • 通过最后一个sid,请求websocket,链接到聊天室,不断接受数据
  • 如果是红包消息,base64解密,得到红包id
  • 通过红包id请求抢红包,成功抢得红包
    爬取**websocket接口,自动抢聊天室红包