准备工作
我们需要把秒杀的商品加入购物车,因为脚本点击的是全选,所以不需要的商品要移出购物车。
展示篇幅有限,淘宝秒杀程序的完整源代码已经打包好了,需要的朋友可以扫码加v,我分享给你
过程分析
1、打开某宝网站
pq = webdriver.Chrome()
pq.get("https://www.taobao.com") # 版权问题
time.sleep(3)
sleep的原因是怕万一网速慢,网页加载慢。
2、扫码登陆
pq.find_element(By.LINK_TEXT, "亲,请登录").click()
print(f"请尽快扫码登录")
time.sleep(10)
自动点击进入登录页面,我们点击扫码登录进行扫码。
3、进入购物车
pq.get("https://cart.taobao.com/cart.htm")
time.sleep(3)
登录成功后,直接进入购物车网站。
4、全选购物车
while True:
try: # 查找 元素 来自 ID
if pq.find_element(By.ID, "J\_SelectAll1"):
pq.find_element(By.ID, "J\_SelectAll1").click()
break
except:
print(f"找不到购买按钮")
找到全选按钮,全选。
5、结算
while True:
# 获取电脑现在的时间, year month day
now = datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S.%f')
# 对比时间,时间到的话就点击结算
print(now)
if now > lisi:
# 点击结算按钮
while True:
try:
if pq.find_element(By.LINK_TEXT, "结 算"):
print("here")
pq.find_element(By.LINK_TEXT, "结 算").click()
print(f"主人,程序锁定商品,结算成功")
break
except:
pass
while True:
try:
if pq.find_element_by_link_text('提交订单'):
pq.find_element_by_link_text('提交订单').click()
print(f"抢购成功,请尽快付款")
except:
print(f"主人,结算提交成功,我已帮你抢到商品啦,请及时支付订单")
speaker.Speak(f"主人,结算提交成功,我已帮你抢到商品啦,请及时支付订单")
break
time.sleep(0.01)
获取现在时间与秒杀时间进行比对,时间一到点击提交订单生成订单,生成订单后支付时间就不需要紧张了。
核心代码:
import datetime
import win32com.client
import time
from selenium.webdriver.common.by import By
from selenium import webdriver
now = datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S.%f')
speaker = win32com.client.Dispatch("SAPI.SpVoice")
lisi = "2022-11-11 20:00:00.00000000"
zhangsan = webdriver.Chrome()
zhangsan.get("https://www.taobao.com")
time.sleep(3) # 查找 网络元素 来自 链接 文本(亲,请登录) #点击
zhangsan.find_element(By.LINK_TEXT, "亲,请登录").click()
print(f"请尽快扫码登录")
time.sleep(10)
zhangsan.get("https://cart.taobao.com/cart.htm")
time.sleep(3)
# 是否全选购物车
while True:
try: # 查找 元素 来自 ID
if zhangsan.find_element(By.ID, "J\_SelectAll1"):
zhangsan.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 > lisi:
# 点击结算按钮
while True:
try:
if zhangsan.find_element(By.LINK_TEXT, "结 算"):
print("here")
zhangsan.find_element(By.LINK_TEXT, "结 算").click()
print(f"主人,程序锁定商品,结算成功")
break
except:
pass
while True:
try:
if zhangsan.find_element_by_link_text('提交订单'):
zhangsan.find_element_by_link_text('提交订单').click()
print(f"抢购成功,请尽快付款")
except:
print(f"主人,结算提交成功,我已帮你抢到商品啦,请及时支付订单")
speaker.Speak(f"主人,结算提交成功,我已帮你抢到商品啦,请及时支付订单")
break
time.sleep(0.01)
零基础Python学习资源分享
如果你是完全零基础,这里也为你准备了一份礼物,希望可以帮到想学习Python的你~
对于0基础小白入门:
如果你是零基础小白,想快速入门Python是可以考虑的!
1、学习时间相对较短,学习内容更全面更集中
2、可以找到适合自己的学习方案
我分享的这份学习资料包含:Python安装包+激活码、Python web开发,Python爬虫,Python数据分析,人工智能、机器学习 等教程,带你从零开始系统性的学好Python!
1、Python所有方向的学习路线
Python所有方向路线就是把Python常用的技术点做整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。
2、Python课程视频
我们在看视频学习的时候,不能光动眼动脑不动手,比较科学的学习方法是在理解之后运用它们,这时候练手项目就很适合了。
3、全套PDF电子书
书籍的好处就在于权威和体系健全,刚开始学习的时候你可以只看视频或者听某个人讲课,但等你学完之后,你觉得你掌握了,这时候建议还是得去看一下书籍,看权威技术书籍也是每个程序员必经之路。