1. 程式人生 > 程式設計 >Python 實現毫秒級淘寶搶購指令碼的示例程式碼

Python 實現毫秒級淘寶搶購指令碼的示例程式碼

本篇文章主要介紹了Python 通過selenium實現毫秒級自動搶購的示例程式碼,通過掃碼登入即可自動完成一系列操作,搶購時間精確至毫秒,可搶加購物車等待時間結算的,也可以搶聚划算的商品。

博主不提供任何伺服器端程式,也不提供任何收費搶購軟體。該文章僅作為學習selenium框架的一個示例程式碼。該思路可運用到其他任何網站,京東,天貓,淘寶均可使用,且不屬於外掛或者軟體之類,只屬於一個自動化點選工具,如有侵犯到任何公司的合法權益,會第一時間將相關程式碼給予刪除。

直接上原始碼:

# !/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)

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支援我們。