這個不能實現(xiàn)毫秒級的一個秒殺,只能實現(xiàn)一種自動化;以淘寶購物為例,話不多說,給大家發(fā)一遍代碼,僅供學(xué)習(xí)參考,可以運用于日?;蛞院蟮囊恍嵗?
import datetime
import time
from selenium import webdriver
name = ‘賬號’
password = ‘密碼’
driver = webdriver.Chrome(executable_path=‘C:\chromedriver.exe’)
driver.get(‘https://www.taobao.com/’)
class pay:
# 登錄模塊
def login_in(self, num, pwd, times):
# 點擊登入
driver.find_element_by_class_name(‘h’).click()
time.sleep(0.3)
# 發(fā)送賬號密碼
driver.find_element_by_id(‘fm-login-id’).send_keys(num)
driver.find_element_by_id(‘fm-login-password’).send_keys(pwd)
time.sleep(0.2)
# 點擊登入
driver.find_element_by_class_name(‘fm-btn’).click()
time.sleep(1)
# 進入購物車
driver.get(“https://cart.taobao.com/cart.htm”)
# driver.find_element_by_id(‘mc-menu-hd’).click()
# time.sleep(0.2)
driver.find_element_by_id(‘J_SelectAll1’).click()
time.sleep(0.5)
self.auto_check1(times)
#反復(fù)結(jié)算
def auto_check(self,times):
? ? while True:
? ? ? ? try:
? ? ? ? ? ? if driver.find_element_by_id('J_SelectAll1'):
? ? ? ? ? ? ? ? driver.find_element_by_id('J_SelectAll1').click()
? ? ? ? ? ? ? ? time.sleep(0.5)
? ? ? ? ? ? ? ? break
? ? ? ? except:
? ? ? ? ? ? time.sleep(0.5)
? ? ? ? ? ? pass
? ? while True:
? ? ? ? if datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S') >= times:
? ? ? ? ? ? while True:
? ? ? ? ? ? ? ? try:
? ? ? ? ? ? ? ? ? ? driver.find_element_by_id("J_Go").click()
? ? ? ? ? ? ? ? ? ? print("成功結(jié)算")
? ? ? ? ? ? ? ? ? ? driver.find_element_by_link_text('提交訂單').click()
? ? ? ? ? ? ? ? ? ? print(f"搶購成功,請盡快付款")
? ? ? ? ? ? ? ? ? ? time.sleep(5)
? ? ? ? ? ? ? ? ? ? return 0
? ? ? ? ? ? ? ? except:
? ? ? ? ? ? ? ? ? ? print("無法結(jié)算,重試")
? ? ? ? ? ? ? ? ? ? time.sleep(1)
? ? ? ? ? ? ? ? ? ? driver.get("https://cart.taobao.com/cart.htm")
? ? ? ? ? ? ? ? ? ? self.auto_check(times)
def auto_check1(self,times):
? ? while True:
? ? ? ? if datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S.%f') >= times:
? ? ? ? ? ? while True:
? ? ? ? ? ? ? ? try:
? ? ? ? ? ? ? ? ? ? driver.find_element_by_id("J_Go").click()
? ? ? ? ? ? ? ? ? ? print("成功結(jié)算")
? ? ? ? ? ? ? ? ? ? driver.find_element_by_link_text('提交訂單').click()
? ? ? ? ? ? ? ? ? ? print(f"搶購成功,請盡快付款")
? ? ? ? ? ? ? ? ? ? time.sleep(5)
? ? ? ? ? ? ? ? ? ? return 0
? ? ? ? ? ? ? ? except:
? ? ? ? ? ? ? ? ? ? print("無法結(jié)算,重試")
? ? ? ? ? ? ? ? ? ? time.sleep(1)
? ? ? ? ? ? ? ? ? ? driver.get("https://cart.taobao.com/cart.htm")
? ? ? ? ? ? ? ? ? ? self.auto_check(times)
# 運行
def run_driver(self, num, pwd, times):
? ? self.login_in(num, pwd, times)
if?name?== ‘main’:
jd = pay()
jd.run_driver(name, password, ‘2020-12-15 19:59:59:400’)