eleckits 发表于 2019-11-13 10:06

Python3.7环境下天猫秒杀程序

本帖最后由 eleckits 于 2019-11-13 10:15 编辑

Python3.7环境下天猫秒杀程序
直接上代码。
当然,需要先pip selenium等工具。

# !/usr/bin/env python

# -*- coding: utf-8 -*-

from selenium import webdriver

import datetime

import time



def login():

    # 打开淘宝登录页,并进行扫码登录

    browser.get("https://www.taobao.com")

    time.sleep(2)

    if browser.find_element_by_link_text("亲,请登录"):

      browser.find_element_by_link_text("亲,请登录").click()

      print("请在15秒内完成扫码")

      time.sleep(15)

      browser.get("https://cart.tmall.com/cart.htm?from=bmini&tpId=725677994")

    time.sleep(2)



    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("结算成功")

                        time.sleep(0.5)

                        break

                except:

                  pass

            while True:

                try:

                  if browser.find_element_by_link_text("提交订单"):

#                        time.sleep(0.5)

                        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.5)

            time.sleep(0.5)





if __name__ == "__main__":

    times = input("请输入抢购时间,格式如(2019-11-11 20:10:00.000000):")

    # 时间格式:"2019-11-11 11:20:00.000000"

    browser = webdriver.Chrome()

    browser.maximize_window()

    login()

    choose = int(input("到时间自动勾选购物车请输入“1”,否则输入“2”:"))

    buy(times, choose)

tiangolden 发表于 2019-11-22 16:31

changjiang 发表于 2019-11-15 20:09
单个线程,可以改成多线程并发去点,还有这种事最好用js,设置个定时器,0.25秒一次,js的速度要比selm库快 ...

用JS,是指在浏览器输入代码,自动点吗??

q5331006 发表于 2020-1-10 20:07

3a1 发表于 2019-11-13 10:36
好东西都有盾,抢不到的。得看账号被没被盾

怎么知道自己的号有没有被盾呢?怎么判断?

CharlesOWen 发表于 2019-11-13 10:08

不加个 校队淘宝时间的吗

eleckits 发表于 2019-11-13 10:14

用阿里云的时间就可以了。。。。

桥段 发表于 2019-11-13 10:19

z这个放在阿里云服务器上面,成功率是不是很高

sudo36张罗 发表于 2019-11-13 10:19

感谢,回头试试

xuanqi521 发表于 2019-11-13 10:26

秒杀验证码怎么破的

3a1 发表于 2019-11-13 10:36

好东西都有盾,抢不到的。得看账号被没被盾

yukangle2006 发表于 2019-11-13 10:40

关键是账号

alexskyboy 发表于 2019-11-13 10:42

单机有人试过吗,成功率咋样

我是大魔王呀 发表于 2019-11-13 10:47

双12我试试看,希望有用。
页: [1] 2 3
查看完整版本: Python3.7环境下天猫秒杀程序