网络编程
位置:首页>> 网络编程>> Python编程>> python淘宝准点秒杀抢单的实现示例

python淘宝准点秒杀抢单的实现示例

作者:Nam、CH  发布时间:2021-08-20 17:50:23 

标签:python,淘宝,秒杀

我这里使用的chorme浏览器,使用前购物车内需要有商品

一、ChromeDriver的安装

若想使用Selenium成功调用Chrome浏览器完成相应的操作,需要通过ChromeDriver来驱动。

这里是ChromeDriver的官方下载地址。

链接:https://chromedriver.storage.googleapis.com/index.html

我们在下载之前先来确认下我们使用的Chrome浏览器版本,只需要红框内几位相同即可

python淘宝准点秒杀抢单的实现示例

python淘宝准点秒杀抢单的实现示例

根据自己操作系统选择

python淘宝准点秒杀抢单的实现示例

Python安装路径下Scripts文件夹中即可

python淘宝准点秒杀抢单的实现示例

二、实现代码


from selenium import webdriver
import time
import datetime
# 打开Chrome浏览器
browser = webdriver.Chrome()

def login():
   # 打开淘宝首页,通过扫码登录
   browser.get("https://www.taobao.com")
   time.sleep(3)
   if browser.find_element_by_link_text("亲,请登录"):
       browser.find_element_by_link_text("亲,请登录").click()
       print(f"请尽快扫码登录")
       time.sleep(10)

def picking(method):
   # 打开购物车列表页面
   browser.get("https://cart.taobao.com/cart.htm")
   time.sleep(3)
   # 是否全选购物车
   if method == 0:
       while True:
           try:
               if browser.find_element_by_id("J_SelectAll1"):
                   browser.find_element_by_id("J_SelectAll1").click()
                   break
           except:
               print(f"找不到购买按钮")
   else:
       print(f"请手动勾选需要购买的商品")
       time.sleep(5)

def buy(times):
   while True:
       now = datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S.%f')
       print(now)
       # 对比时间,时间到的话就点击结算
       if now > times:
           # 点击结算按钮
           while True:
               try:
                   if browser.find_element_by_id("J_Go"):
                       browser.find_element_by_id("J_Go").click()
                       print(f"结算成功,准备提交订单")
                       break
               except:
                   pass
           # 点击提交订单按钮
           while True:
               try:
                   if browser.find_element_by_link_text('提交订单'):
                       browser.find_element_by_link_text('提交订单').click()
                       print(f"抢购成功,请尽快付款")
               except:
                   print(f"再次尝试提交订单")
           time.sleep(0.01)

if __name__ == '__main__':
   login();
   picking(0);
   buy("2021-05-12 21:57:08.211142"); #修改为自己所需要的时间,注意时间格式一定要对

来源:https://blog.csdn.net/weixin_45873781/article/details/116768720

0
投稿

猜你喜欢

手机版 网络编程 asp之家 www.aspxhome.com