某寶秒殺,用毫秒級的精準度來搶購!
還記得前段時間情人節,各種產品活動秒殺,結果自然少不了被物件一番折磨 (注意:不是new出來的哈,也不是橡膠的,實實在在的女朋友) 于是乎徹底激發了我的求生欲,在這種關頭我是必須發揮出自己的才能了,這才有了這篇毫秒級秒殺的精品出來,話不多說直接進入主題
專案環境
? 作業系統:Windows 10
? 開發環境:python3.7
? IDE:Pycharm
? 自動化模塊:Selenium
? 安裝命令:pip install selenium
? 瀏覽器版本:Google Chrome 99.0.4844.51
? 瀏覽器驅動版本:ChromeDriver 99.0.4844.51
? 瀏覽器驅動版本與瀏覽器版本要一致!
某寶搶購流程分析
1,登錄網站
? 2,購物車選中搶購商品
? 3,結算購買
? 4,提交訂單
? 關鍵:快速完成前面流程,當訂單進入提交頁面時,付款時間不影響搶購,
程式實作思路
? 購物流程都是固定沒有變化的,因此可以把購物流程步驟用代碼編輯好交給selenium去自動執行,
? 專案結構:驅動直接復制放入專案根路徑
1,匯入對應類別庫實作對瀏覽器的操作
# author: # ide: PyCharm from selenium import webdriver import datetime import time #自動打開瀏覽器并且最大化視窗 driver = webdriver.Chrome() driver.maximize_window()
? 執行上述代碼,瀏覽器會自動打開并顯示如下,證明我們已經開始通過代碼操控瀏覽器了,
2,用代碼實作購物流程
2.1 訪問某寶:
driver.get('https://www.taobao.com')
2.2登錄某寶:
if driver.find_element_by_partial_link_text('親,請登錄'): driver.find_element_by_partial_link_text('親,請登錄').click()
2.3 進入購物車
#跳轉到購物車頁面 driver.get('https://cart.taobao.com/cart.htm')
2.4 選中所有商品
#尋找全選選項并勾選 if driver.find_element_by_id("J_SelectAll1"): driver.find_element_by_id("J_SelectAll1").click()
2.5 對比時間,提交結算(重點)
def buy(buy_time): #buy_time 購買時間 while True: now = datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S.%f') print('當前時間:%s'%now) #判斷是否到達搶購時間 if now>buy_time: try: driver.find_element_by_partial_link_text('結 算').click() except: pass #對比時間,回圈提交訂單 while True: try: if driver.find_element_by_link_text('提交訂單'): driver.find_element_by_link_text('提交訂單').click() print(f"搶購成功,請盡快付款") except: Python交流群:748989764 print(f"再次嘗試提交訂單") time.sleep(0.01)

? 這樣就可以通過設定的段時間去定時定點搶購商品啦!
print(f"再次嘗試提交訂單") time.sleep(0.01)
[外鏈圖片轉存中...(img-oA7Q06eg-1648366756452)]
? **這樣就可以通過設定的段時間去定時定點搶購商品啦!**
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/514238.html
標籤:Python
上一篇:關于編輯器和解釋型編譯型語言
