愛鋒貝

 找回密碼
 立即注冊

只需一步,快速開始

扫一扫,极速登录

查看: 359|回復(fù): 0
打印 上一主題 下一主題
收起左側(cè)

某寶一鍵秒殺,毫秒級的精準(zhǔn)度。爬蟲就是這點(diǎn)牛。

[復(fù)制鏈接]

1356

主題

1397

帖子

5663

積分

Rank: 8Rank: 8

跳轉(zhuǎn)到指定樓層
樓主
發(fā)表于 2022-8-20 05:54:37 | 只看該作者 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式

一鍵注冊,加入手機(jī)圈

您需要 登錄 才可以下載或查看,沒有帳號?立即注冊   

x
?
某寶秒殺,用毫秒級的精準(zhǔn)度來搶購! 前言 還記得前段時(shí)間情人節(jié),各種產(chǎn)品活動(dòng)秒殺。結(jié)果有對象的辣條自然少不了被對象一番折磨 (注意:不是new出來的哈,也不是橡膠的,實(shí)實(shí)在在的女朋友) 于是乎徹底激發(fā)了我的求生欲,在這種關(guān)頭我是必須發(fā)揮出自己的才能了,這才有了這篇毫秒級秒殺的精品出來,話不多說直接進(jìn)入主題


?
目錄? 1,項(xiàng)目環(huán)境
? 2,某寶搶購流程分析
? 3,程序?qū)崿F(xiàn)思路
? 4,代碼實(shí)踐與梳理
項(xiàng)目環(huán)境? 操作系統(tǒng):Windows 10
? 開發(fā)環(huán)境:python3.7
? IDE:Pycharm
? 自動(dòng)化模塊:Selenium
? 安裝命令:pip install selenium
? 瀏覽器版本:Google Chrome 99.0.4844.51
? 瀏覽器驅(qū)動(dòng)版本:ChromeDriver 99.0.4844.51
? 瀏覽器驅(qū)動(dòng)版本與瀏覽器版本要一致!
某寶搶購流程分析? 1,登錄網(wǎng)站
? 2,購物車選中搶購商品
? 3,結(jié)算購買
? 4,提交訂單
? 關(guān)鍵:快速完成前面流程,當(dāng)訂單進(jìn)入提交頁面時(shí),付款時(shí)間不影響搶購。


?
程序?qū)崿F(xiàn)思路? 購物流程都是固定沒有變化的,因此可以把購物流程步驟用代碼編輯好交給selenium去自動(dòng)執(zhí)行。
? 項(xiàng)目結(jié)構(gòu):驅(qū)動(dòng)直接復(fù)制放入項(xiàng)目根路徑
1,導(dǎo)入對應(yīng)類庫實(shí)現(xiàn)對瀏覽器的操作
author:辣條

ide: PyCharm

from selenium import webdriver import datetime import time
#自動(dòng)打開瀏覽器并且最大化窗口 driver = webdriver.Chrome() driver.maximize_window() 1 2 3 4 5 6 7 8 9 10? 執(zhí)行上述代碼,


?瀏覽器會(huì)自動(dòng)打開并顯示如下,證明我們已經(jīng)開始通過代碼操控瀏覽器了。
2,用代碼實(shí)現(xiàn)購物流程 2.1 訪問某寶: driver.get('https://www.taobao.com') 1 2.2登錄某寶:


?
if driver.find_element_by_partial_link_text('親,請登錄'): driver.find_element_by_partial_link_text('親,請登錄').click() 1 2 2.3 進(jìn)入購物車 #跳轉(zhuǎn)到購物車頁面 driver.get('淘寶網(wǎng) - 淘!我喜歡 ') 1 2 2.4 選中所有商品


?
#尋找全選選項(xiàng)并勾選 if driver.find_element_by_id("J_SelectAll1"): driver.find_element_by_id("J_SelectAll1").click() 1 2 3 2.5 對比時(shí)間,提交結(jié)算(重點(diǎn)) def buy(buy_time): #buy_time 購買時(shí)間 while True: now = datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S.%f') print('當(dāng)前時(shí)間:%s'%now)
#判斷是否到達(dá)搶購時(shí)間     if now>buy_time:         try:             driver.find_element_by_partial_link_text('結(jié) 算').click()         except:             pass         #對比時(shí)間,循環(huán)提交訂單     while True:             try:                 if driver.find_element_by_link_text('提交訂單'):                     driver.find_element_by_link_text('提交訂單').click()                     print(f"搶購成功,請盡快付款")             except:                 print(f"再次嘗試提交訂單")         time.sleep(0.01)


1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
? 這樣就可以通過設(shè)定的段時(shí)間去定時(shí)定點(diǎn)搶購商品啦!


?
print(f"再次嘗試提交訂單")     time.sleep(0.01)


1 2
[外鏈圖片轉(zhuǎn)存中...(img-oA7Q06eg-1648366756452)]
? 這樣就可以通過設(shè)定的段時(shí)間去定時(shí)定點(diǎn)搶購商品啦!
?

-----------------------------
精選高品質(zhì)二手iPhone,上愛鋒貝APP
您需要登錄后才可以回帖 登錄 | 立即注冊   

本版積分規(guī)則

QQ|Archiver|手機(jī)版|小黑屋|愛鋒貝 ( 粵ICP備16041312號-5 )

GMT+8, 2025-1-17 14:32

Powered by Discuz! X3.4

© 2001-2013 Discuz Team. 技術(shù)支持 by 巔峰設(shè)計(jì).

快速回復(fù) 返回頂部 返回列表