背景
某号星球小程序,朋友想弄个挂机脚本,做任务存钻石。
类似pdd的植物浇水之类的东西(甚至接口里写的就是water)
其中有一项任务是微博发帖,复制它的固定话术,然后在微博超话发帖子,再把帖子连接黏贴近它的框里,然后点击验证。
接口返回
{"status":200,"data":{"status":1,"msg":"快来wx小橙序『****(和谐)』一起为爱心公益助力,我们在[给你小心心]XX星球[给你小心心]等你哦~"},"msg":"","err":""}
我想,后台应该就是拿到连接的html源码,然后解析关键词,那么有没有可能我不给它微博的连接,而是自己伪造一个呢?
实践
用gitee建一个仓库,新建一个文件,把一个在微博超话的正常贴子的页面源代码直接复制黏贴进去,然后保存。
点击原始数据
,就能获得连接了,然后用python发包
import requests
import os
headers = {
'Host': 'xxx.xxxxxx.com',
'xweb_xhr': '1',
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/122.0.0.0 Safari/537.36 MicroMessenger/7.0.20.1781(0x6700143B) NetType/WIFI MiniProgramEnv/Windows WindowsWechat/WMPF WindowsWechat(0x6309092b)XWEB/11275',
'Accept': '*/*',
'Sec-Fetch-Site': 'cross-site',
'Sec-Fetch-Mode': 'cors',
'Sec-Fetch-Dest': 'empty',
'Referer': 'https://servicewechat.com/wxc86124c201e9b259/11/page-frame.html',
'Accept-Language': 'zh-CN,zh;q=0.9',
}
data = {
'type': '0',
'url': 'https://gitee.com/teapot_418/xxx-archive/raw/master/m.weibo.cn/status/xxxxxxxxx.html',
'uid': os.environ["uid"],
'xid': '171',
}
response = requests.post('https://xxx.xxxxx.com/star/apix171/checkChaoHua', headers=headers, data=data)
print(response.text)
结果返回成功,手动打开小程序,发现微博超话任务成功完成.
完整的小程序挂机脚本已经写完,不过这小程序挺简单的,参数也只有一个十分简陋的md5加密