Python 实现毫秒级淘宝、京东、天猫等秒杀抢购脚本

本篇文章主要介绍了Python 经过selenium实现毫秒级自动抢购的示例代码,经过扫码登陆便可自动完成一系列操做,抢购时间精确至毫秒,可抢加购物车等待时间结算的,也能够抢聚划算的商品。python

该思路可运用到其余任何网站,京东,天猫,淘宝都可使用,且不属于外挂或者软件之类,只属于一个自动化点击工具。

web

# !/usr/bin/env python
# -*- coding: utf-8 -*-
# 2019/03/16
# 淘宝秒杀脚本,扫码登陆版
from selenium import webdriver
import datetime
import time
 
 
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("请在15秒内完成扫码")
        time.sleep(15)
        browser.get("https://cart.taobao.com/cart.htm")
    time.sleep(3)
 
    now = datetime.datetime.now()
    print('login success:', now.strftime('%Y-%m-%d %H:%M:%S'))
 
 
def buy(times, choose):
    # 点击购物车里全选按钮
    if choose == 2:
        print("请手动勾选须要购买的商品")
    while True:
        now = datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S.%f')
        # 对比时间,时间到的话就点击结算
        if now > times:
            if choose == 1:
                while True:
                    try:
                        if browser.find_element_by_id("J_SelectAll2"):
                            browser.find_element_by_id("J_SelectAll2").click()
                            break
                    except:
                        print("找不到购买按钮")
            # 点击结算按钮
            while True:
                try:
                    if browser.find_element_by_link_text("结 算"):
                        browser.find_element_by_link_text("结 算").click()
                        print("结算成功")
                        break
                except:
                    pass
            while True:
                try:
                    if browser.find_element_by_link_text('提交订单'):
                        browser.find_element_by_link_text('提交订单').click()
                        now1 = datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S.%f')
                        print("抢购成功时间:%s" % now1)
                except:
                    print("再次尝试提交订单")
            time.sleep(0.01)
 
 
if __name__ == "__main__":
    times = input("请输入抢购时间,格式如(2018-09-06 11:20:00.000000):")
    # 时间格式:"2018-09-06 11:20:00.000000"
    browser = webdriver.Chrome()
    browser.maximize_window()
    login()
    choose = int(input("到时间自动勾选购物车请输入“1”,不然输入“2”:"))
    buy(times, choose)