这几天epic没啥新游戏,貌似只有一款免费游戏,它的奖励还得登录它的游戏客户端才能拿,我可没时间把我的那么多账号都登一遍🤔
所以我在某个已经打开了开发者选项的交易历史界面随手复制了下curl请求,发现它现在所有账号参数全在cookies里面🤔我记得以前epic的账号凭据反正不在cookies里面,它放在了鬼知道什么地方,所以有时候恢复个浏览器profile都能掉登录🤔
当然epic最大的问题是如果访问需要账号的页面之后放置了足够长的时间,它会强制重新登录一遍,哪怕默认我不需要重新输账号和密码,这个重新登录的过程仍然使得我直接访问购买(迫真)链接之后它重定向不到正确的链接,所以本来我访问一次页面能够完成的事情便乘了访问两次,而且对我的几百个账号来说每个都得访问两次🤔
但现在我趁这次机会收集了所有账号的所有cookies,接下来我便可以比如每个小时访问一遍交易记录页面,准确来说是交易记录的那个ajax请求,这样的话也许以后我每次需要领epic游戏的时候,我就可以直接访问一遍购买链接就能打开购买页面了,效率至少能提升一半🤔
而且epic改版之后换了一家验证码网站,这家基本上只要浏览器页面一直挂着就能自动领游戏,不像上家有时候还要弹出个验证码页面,导致那段时间我发明了用高级ip故意让它弹出验证码页面,然后用低级ip来点验证码的玩法🤔
具体来说,它领游戏的网络请求按照点击验证码前后被拆成了两个阶段,第一阶段对ip质量是有要求的,低质量的ip可能会触发点击三四次验证码,而第二个阶段对ip质量没有要求,只要这个ip当天领了少于10个游戏都能领🤔所以只要故意触发验证码页面,就能用任何ip领游戏了🤔问题是第一阶段并非什么时候都会卡验证码,我的经验表明在领第七个游戏时才会卡验证码🤔然后在5分钟后它又不卡验证码了,所以我必须在5分钟内刷出尽可能多的验证码页面🤔验证码界面的有效期大概是10分钟,在此期间只要输入了正确的验证码就能直接领游戏,但之后它会提示重新刷新页面🤔所以我实践中基本上是每一个高级ip换40个验证码页面,分四个低级ip领完🤔
当然现在我不用这么蛋疼地折腾了,也许我可以试下用无头浏览器来自动领游戏了(确信🤔但我不清楚的是无头浏览器到底有多先进,能否做到打开一个页面就能一直运行,让我比如用命令行来控制点击网页上的按钮,点击之后它会自动运行一系列的脚本和网页,直到完成指定的网络请求(比如迫真感谢页面)或者由另外一个程序返回领了游戏的结果(比如交易请求的那个ajax是完全用不着无头浏览器的)再退出?而且如果可能的话,能不能对多个线程的状态做隔离,就像firefox的身份标签页一样?🤔如果它能做到这些的话,自动化领epic游戏就能实现了🤔
update:不到8个小时这些cookies都失效了,而且重新登录之后这些cookies仍然没有恢复,看来这方面的研究还得继续(确信🤔