最近想抢购一下淘宝和天猫的秒杀商品,md,老是抢不过别人,所以去github上找了一份抢购的代码。根据自己的需要,修改了一下。
最终的效果如下所示:
使用python脚本抢购天猫和淘宝商品,0秒下单
主要的实现思路
1. 使用selenium的debuggerAddress模式创建一个新的chrome浏览器,在这个浏览器中禁止加载图片
2. 模拟真人扫码登录淘宝,保存cookies,下一次不用再登录。
3. 将需要抢购的商品加入到购物车中,程序会每分钟刷新一遍购物车。
4. 直到到达抢购时间的前一分钟停止刷新,到达抢购时间即可开始抢购。
主要代码如下:
def sec_kill(self):
self.driver.get("https://cart.taobao.com/cart.htm")
sleep(3)
if self.driver.find_element_by_css_selector('#J_SelectAll1 > div > label'):
self.driver.find_element_by_css_selector('#J_SelectAll1 > div > label').click()
print("已经选中全部商品!!!")
sleep(1)
while True:
now = datetime.now()
if now >= self.seckill_time_obj:
break
js = WebDriverWait(self.driver, 10,poll_frequency=0.1).until(EC.element_to_be_clickable((By.CSS_SELECTOR, '#J_SmallSubmit')))
js.click()
submit = WebDriverWait(self.driver, 10, poll_frequency=0.1).until(EC.element_to_be_clickable((By.CSS_SELECTOR, '#submitOrderPC_1 > div > a.go-btn')))
submit.click()
原代码的实现方式是:不管页面是否加载,就不停的点击提价订单按钮,总是会导致失败。
所以我改成了知道提交订单按钮加载以后,再点击提交订单,能够保证不出错。
具体的源代码可以看我前面的那个视频的置顶评论。
源码获取,微信公众号:杨芋土豆