Python制作腳本幫女朋友搶購(gòu)清空購(gòu)物車
大家好,我是辣條。
辣條的一個(gè)朋友最近跟我訴苦:女朋友沉迷淘寶搶購(gòu)無(wú)法自拔,大晚上不睡覺(jué)都在定時(shí)搶購(gòu),真是敗家。
都是好朋友辣條肯定幫忙,不就是定時(shí)搶購(gòu),定時(shí)清空購(gòu)物車嘛,這叫安排。
爬取目標(biāo)
網(wǎng)站:淘寶
工具使用
開發(fā)工具:pycharm 開發(fā)環(huán)境:python3.7, Windows10 使用工具包:selenuim
需求分析
我們的目標(biāo)是秒殺淘寶的訂單,這里面有幾個(gè)關(guān)鍵點(diǎn),首先需要登錄淘寶,其次你需要準(zhǔn)備好訂單,最后要在指定時(shí)間快速提交訂單。
項(xiàng)目思路解析
selenium安裝配置
selenium是Python自動(dòng)化測(cè)試的工具庫(kù),需要配置一些環(huán)境驅(qū)動(dòng) selenium安裝
pip install selenium
Selenium安裝好之后,并不能直接使用,它需要與瀏覽器進(jìn)行對(duì)接。這里拿Chrome瀏覽器為例。若想使用Selenium成功調(diào)用Chrome瀏覽器完成相應(yīng)的操作,需要通過(guò)ChromeDriver來(lái)驅(qū)動(dòng)。 鏈接:
https://chromedriver.storage.googleapis.com/index.html 根據(jù)自身的chorme版本選擇安裝的驅(qū)動(dòng)版本
下載完成之后,解壓,將其放置在Python安裝路徑下python文件夾中即可
項(xiàng)目解析
嘗試通過(guò)selenium打開淘寶首頁(yè),檢驗(yàn)是否安裝成功
from selenium import webdriver driver = webdriver.Chrome() driver.maximize_window() driver.get(https://www.taobao.com)
通過(guò)xpath定位選取到登錄標(biāo)簽,搶購(gòu)腳本需要先知道你購(gòu)買的東西是什么
登錄的方式課自行選擇(可賬戶密碼登錄,也可掃碼登錄,辣條在這里用的掃碼登錄)
登錄成功后點(diǎn)擊購(gòu)物車,選取你需要的商品數(shù)據(jù)(可全選,可自己手動(dòng)勾選)
在點(diǎn)擊結(jié)算按鈕
設(shè)定一個(gè)結(jié)算時(shí)間,你需要下單的時(shí)間
等待時(shí)間的到來(lái) 點(diǎn)擊提交訂單按鈕
簡(jiǎn)易源碼分享
#!/usr/bin/env python # -*- coding: utf-8 -*- # @Author : BaiChuan # @File : 淘寶搶購(gòu).py from selenium import webdriver import datetime import time driver = webdriver.Chrome() driver.maximize_window() def login(): # 打開淘寶登錄頁(yè),并進(jìn)行掃碼登錄 driver.get("https://www.taobao.com") time.sleep(3) if driver.find_element_by_link_text("親,請(qǐng)登錄"): driver.find_element_by_link_text("親,請(qǐng)登錄").click() print("請(qǐng)?jiān)?0秒內(nèi)完成掃碼") time.sleep(30) driver.get("https://cart.taobao.com/cart.htm") time.sleep(3) # 點(diǎn)擊購(gòu)物車?yán)锶x按鈕 if driver.find_element_by_id("J_SelectAll1"): driver.find_element_by_id("J_SelectAll1").click() now = datetime.datetime.now() print('login success:', now.strftime('%Y-%m-%d %H:%M:%S:%f')) def buy(buytime): while True: now = datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S.%f') print("當(dāng)前時(shí)間" + now) # 對(duì)比時(shí)間,時(shí)間到的話就點(diǎn)擊結(jié)算 if now > buytime: try: # 點(diǎn)擊結(jié)算按鈕 if driver.find_element_by_id("J_Go"): driver.find_element_by_id("J_Go").click() driver.find_element_by_link_text('提交訂單').click() except: time.sleep(0.1) print(now) time.sleep(0.1) if __name__ == "__main__": # times = input("請(qǐng)輸入搶購(gòu)時(shí)間:") # 時(shí)間格式:"2018-09-06 11:20:00.000000" login() buy("2021-08-24 14:30:00.000000")
腳本是弄完了不過(guò)事情好像沒(méi)完......
到此這篇關(guān)于Python制作腳本搶購(gòu)清空購(gòu)物車的文章就介紹到這了,更多相關(guān)Python搶購(gòu)腳本內(nèi)容請(qǐng)搜索本站以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持本站!
版權(quán)聲明:本站文章來(lái)源標(biāo)注為YINGSOO的內(nèi)容版權(quán)均為本站所有,歡迎引用、轉(zhuǎn)載,請(qǐng)保持原文完整并注明來(lái)源及原文鏈接。禁止復(fù)制或仿造本網(wǎng)站,禁止在非www.sddonglingsh.com所屬的服務(wù)器上建立鏡像,否則將依法追究法律責(zé)任。本站部分內(nèi)容來(lái)源于網(wǎng)友推薦、互聯(lián)網(wǎng)收集整理而來(lái),僅供學(xué)習(xí)參考,不代表本站立場(chǎng),如有內(nèi)容涉嫌侵權(quán),請(qǐng)聯(lián)系alex-e#qq.com處理。