学习一下python脚本,做了一个小实验,在某宝上,自动购买一个迪士尼的娃娃。感兴趣的同学可以看看,有需求的也可以聊聊。纯属娱乐。
coding=utf-8
import os
from selenium import webdriver
import datetime
import time
from os import path
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.chrome.service import Service
from selenium.webdriver.common.by import By
此处chromedriver改为自己下载解压的chromedriver的路径
s = Service(‘C:/Program Files (x86)/Google/Chrome/Application/chromedriver’)
driver = webdriver.Chrome(service=s)
driver.maximize_window()
def login():
# 打开淘宝首页,扫码登陆淘宝
driver.get(“https://www.taobao.com”)
time.sleep(1)
flag = False
try:
if driver.find_element(by=By.LINK_TEXT, value=‘亲,请登录’):
driver.find_element(by=By.LINK_TEXT, value=‘亲,请登录’).click()
print(“请在15秒内完成扫码登录…”)
time.sleep(15)
# 打开购物车列表首页
driver.get(“https://cart.taobao.com/cart.htm”)
time.sleep(1)
# 全选购物车
if driver.find_element(by=By.ID, value=‘J_SelectAll1’):
driver.find_element(by=By.ID, value=‘J_SelectAll1’).click()
now = datetime.datetime.now()
print(“login success:”, now.strftime(“%Y-%m-%d %H:%M:%S”))
flag = True
except Exception as e:
print(e)
finally:
return flag
def buy(times):
flag = True
while flag:
# 记录当前时间,使用datatime内置模块
now = datetime.datetime.now().strftime(“%Y-%m-%d %H:%M:%S”)
print(times)
print(now)
# 对比时间,时间到的话就点击结算
if True:
try:
if driver.find_element(by=By.ID, value=‘J_Go’):
driver.find_element(by=By.ID, value=‘J_Go’).click()
WebDriverWait(driver, 10, 0.1).until(EC.presence_of_element_located((By.LINK_TEXT, ‘提交订单’)))
driver.find_element(by=By.LINK_TEXT, value=‘提交订单’).click()
print(‘抢购成功,请尽快付款’)
flag = False
break
except Exception as e1:
print(e1)
print(now)
time.sleep(0.05)
if name == “main”:
_times = “2022-09-19 17:10:30”
if login():
buy(_times)