年年雙十一,年年搶不到,自制Python淘寶秒殺搶購指令碼,百分百中

2021-11-07 12:00:02

大家好,我是不學前端的前端程式設計師,
在這裡插入圖片描述

事情是這個樣子的,前幾天不是雙十一預購秒殺嘛
在這裡插入圖片描述

由於我女朋友比較笨,手速比較慢,就一直搶不到,她沒搶到特價商品就不開心,

她不開心,我也就不能跟著開心,就別提看6號的全球總決賽了
在這裡插入圖片描述

為了解決這個問題,就決定寫一個自動定時搶購的指令碼。

第一步:

首先我的思路很簡單,就是讓「程式」幫我們自動開啟瀏覽器,進入淘寶,然後到購物車等待搶購時間,自動購買並支付。
在這裡插入圖片描述

第二步:

匯入模組,我們需要一個時間模組,搶購的時間,還有一個Python的自動化操作。

程式碼如下:

import datetime #模組
now = datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S.%f')
import time
#全自動化Python程式碼操作
from selenium import webdriver

第三步:

根據我們的思路,首先需要程式幫我們開啟谷歌瀏覽器,並輸入「www.taobao.com」,然後點選登入,進入到購物車。

程式碼如下

times = "2021-11-04 21:00:00.00000000"
browser = webdriver.Chrome()
browser.get("https://www.taobao.com")
time.sleep(3)                               #點選
browser.find_element_by_link_text("親,請登入").click()

不過這裡有一個問題就是,我們不能把我們的賬戶、密碼寫在程式碼裡邊,這樣很容易洩露,所以這裡採取手動掃碼登入

print(f"請儘快掃碼登入")
time.sleep(10)
browser.get("https://cart.taobao.com/cart.htm")
time.sleep(3)

第四步:

進入購物車,等待搶購時間然後購買。

首先這個程式不能幫我們去挑選商品,所以我們得提前把商品加入到購物車裡面。

等到了搶購時間,直接全選商品購買就可以了。

# 是否全選購物車
while True:
    try:
        if browser.find_element_by_id("J_SelectAll1"):
            browser.find_element_by_id("J_SelectAll1").click()
            break
    except:
        print(f"找不到購買按鈕")


while True:
    #獲取電腦現在的時間,                      year month day
    now = datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S.%f')
    # 對比時間,時間到的話就點選結算
    print(now)
    #判斷是不是到了秒殺時間?
    if now > times:
        # 點選結算按鈕
        while True:
            try:
                if browser.find_element_by_link_text("結 算"):
                    print("here")
                    browser.find_element_by_link_text("結 算").click()
                    print(f"主人,程式鎖定商品,結算成功")
                    break
            except:
                pass
        # 點選提交訂單按鈕
        while True:
            try:
                if browser.find_element_by_link_text('提交訂單'):
                    browser.find_element_by_link_text('提交訂單').click()
                    print(f"搶購成功,請儘快付款")
            except:
                print(f"主人,我已幫你搶到商品啦,您來支付吧")
                break
        time.sleep(0.01)

完結

希望各位小姐姐都能買到自己想要的禮物,給你們的男朋友放個假哦!

EDG加油,