一、因为本人是dota2爱好者,有一天看主播直播的时候,主播说回复帖子可以获得定制的键盘,非常想要,所以当时脑子中就想了下,应该可以通过脚本的方式刷帖盖楼;
二、具体分析了一下通过直播app分享出来的web端连接,连续提交多次回帖请求后,就需要输入验证码;
三、通过fidder抓包后,将抓包的报文save成saz格式的文档,然后用LR12打开,会得到一个如下的脚本;
web_add_cookie("Hm_lvt_e99aee90ec1b2106afe7ec3b199020a7=1553095042,1553131553,1553173073,1553215355;; DOMAIN=mapi-yuba.douyu.com");
web_add_cookie("Hm_lpvt_e99aee90ec1b2106afe7ec3b199020a7=1553219749; DOMAIN=mapi-yuba.douyu.com");
web_add_cookie("acf_did=010ce7afbe2c338fd47daf8200001521; DOMAIN=mapi-yuba.douyu.com");
web_add_cookie("dy_did=010ce7afbe2c338fd47daf8200001521; DOMAIN=mapi-yuba.douyu.com");
web_submit_data("answer",
"Action=https://mapi-yuba.douyu.com/answer",
"Method=POST",
"RecContentType=application/json",
"Referer=",
"Snapshot=t1.inf",
"Mode=HTML",
ITEMDATA,
"Name=content", "Value=Donbas", ENDITEM,
"Name=pid", "Value=451227091552680601", ENDITEM,
"Name=repost", "Value=0", ENDITEM,
LAST);
四、直接回访这个脚本请求,会发现系统提示错误,原因是因为缺乏标识,系统当web端请求在处理,实际上分享出来的web端请求域名是不一样的,所以需要在这个请求前面加一些报文头,模拟成手机的请求;
web_add_auto_header("auth", "b50f1573a3db46e5292bfc03ee22f480");
web_add_auto_header("client", "ios");
web_add_auto_header("dy-device-id", "010ce7afbe2c338fd47daf8200001521");
web_add_auto_header("phone_model", "iPhone8,2");
web_add_auto_header("phone_system", "11.1.2");
web_add_auto_header("Accept-Encoding", "gzip");
web_add_auto_header("Token", "206034152_11_1471f75c61d9e14e_2_20826415");
web_add_auto_header("timestamp", "1553219820");
四、但是还是发现一个问题,提交速度太频繁,连续5次之后,会提示操作频繁了,所以增加了一个think_time;
五、现在已经盖楼了1w7,大概是十分之一的中奖概率,哈哈哈。