1.先抓包,发现请求中有一个m参数变化了2.调用栈跟在后面3.m的生成位置很明显。需要注意的一点是这里调用了.wasm文件的encode方法,百度有个python有个pywasm库可以调用这个文件,下载wasm文件到本地调用代码示例importrequestsimporttimeimportmathimportrandomimportpywasmfromurllibimportparsevm=pywasm.load("./main.wasm")defget_m():t1=int(int(time.time())/2)t2=t1-math.floor(random.random()*(50)+1)结果=vm.exec("编码",[t1,t2])返回str(结果)+'|'+str(t1)+'|'+str(t2)headers={"User-Agent":"yuanrenxue.project","cookie":"sessionid=Yousessionid"}if__name__=='__main__':num_list=[]foriinrange(1,6):url="https://match.yuanrenxue.com/api/match/15?m={}&page={}".format(parse.quote(get_m()),i)r=requests.get(url,headers).json()用于r['data']中的数据:num_list.append(int(data['value']))print(sum(num_list))
