分类: 网络与安全
2022-11-22 10:41:47
本文作者:梁冬冬
2022年双十一大促已经完美收官,兄弟姐妹克服种种困难与挑战.. 备战的会议室忙碌中带着紧张,当峰值过后的喜悦不言而喻,今年备战室里听着对面的兄弟讲述了他抢茅台的经过,以及对马上来临的整点茅台活动期待,我也立马参与进去,但是....没抢到, 带着种种的疑问,百度了下网上抢茅台的种种手段与方法,发现里面的猫腻还真不少,同时作为风险人也想不断的通过各种技术手段识别发现风险,让羊毛党无处躲藏;也许,竞争对手比你想象中要更加的强大, 今天就带你走近抢茅台的脚本,领略下TA们有趣的灵魂;
下面的列表是我总结网络上普遍存在的一些抢购的方式,这些方式的共性是:模拟单人或多人的操作行为,在{BANNED}{BANNED}最佳佳短的时间内完成抢购流程
?像人一样控制浏览器:脚本里是基于webdriver的一种浏览器驱动方式,可以通过驱动来控制浏览器实施控制页面操作,例如里面使用频繁的find_elemnt_by_id是通过页面ID识别的(ID可以通过控制台元素定位获取到),find_element_by_link_text通过精准匹配页面上的文案,是辨识元素的一种方式;click()是识别元素后的鼠标点击动作;
?像人一样进入登录:脚本里面的run_driver方法,里面调用了login_in方法,里面的逻辑大概是模拟用户输入用户名+密码,点击登录按钮后,实现登录;
?像人一样的循环抢购商品:抢购茅台会有对应的抢购时间,这里的times就是作者设定的抢购时间,循环体里面会判断当前时间是否大于等于times时间,如果出现大于等于后,会进入到第二个循环体,寻找下单的按钮然后进行点击操作;在点击成功后继续进入到提交订单页面,通过link_text识别文案,进行点击操作,{BANNED}{BANNED}最佳佳终成功抢购商品成功,进入到待付款页面;else,如果抢购后无法结算,脚本会通过驱动重新打开商品页面,然后选择商品,重新走判断时间的逻辑,以上。