最近羊了个羊很火,第一关基本瞎点都可以过。
可是第二关老是过不了,总是差一点,看来不上点黑科技是不行。
思路:发送【通关】的数据包给服务器
所以我们需要做两个工作,一个是找到自己的t值(表示哪个账号),另一个是发送的api
这里可以通过mitmproxy的方法抓取小程序的数据包,然后查看数据包里面的t值(这个方法可以适用任何版本的wx),👇🏻下面两篇文章有介绍mitmproxy的使用以及如何获取小程序的数据包
### mitmproxy的安装
命令:pip install mitmproy
先配置好手机的代理IP和启动mitmproxy
在终端中启动mitmweb
mitmweb
在浏览器中查看数据包(输入mitmweb会自动在浏览器中打开网页,如果没有打开的则手动输入)
http://127.0.0.1:8081/#/flows
打开游戏小程序,然后随便点到游戏结束。
通过查找图中cat-match开头的数据包,可以看到t值,接着继续找发送通过的api接口。
最后通过将t值发给api接口,即可通关
import requests
# 请求头,里面包含t值
header = {
"t": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE2OTQzOTUzNzIsIm5iZiI6MTY2MzI5MzE3MiwiaWF0IjoxNjYzMjkxMzcyLCJqdGkiOiJDTTpjYXRfbWF0Y2g6bHQxMjM0NTYiLCJvcGVuX2lkIjoiIiwidWlkx'x'x'x'x'xIyOSwiZGVidWciOiIiLCJsYW5nIjoiIn0.jTPihc9E8-W_v1avRm_a8F36riDGLMOvV9VLww3lPfM"
}
# 发送通关api
api_url = "http://cat-match.easygame2021.com/sheep/v1/game/game_over?rank_score=1&rank_state=1&rank_time=15&rank_role=1&skin=1"
# 发送
requests.get(api_url,headers=header)