Python淘宝秒杀的脚本实现
作者:fakerth 发布时间:2022-12-08 01:46:21
标签:Python,淘宝秒杀
准备工作
我们需要把秒杀的商品加入购物车,因为脚本点击的是全选,所以不需要的商品要移出购物车。
过程分析
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)
来源:https://blog.csdn.net/weixin_43912621/article/details/127810537
0
投稿
猜你喜欢
- 额。。。每个请求都有token值的传入,但是token非常易变,一旦变化,所有的接口用例都得改一遍token,工作量太大了。。。那么有没有一
- 1. 直接打印错误try:# your codeexcept KeyboardInterrupt:print("quit"
- //定义一个对象数组 var data = [{ name: "jiang", age: 22 }, { name: &
- python中有的df列比较长head的时候会出现省略号,现在数据分析常用的就是基于anaconda的notebook和sypder,在sp
- var obj=document.getElementById("id");得到的是dom对象,对该对象进行操作的时候使
- 第一种方法: 代码如下:/* 创建链接服务器 */ exec sp_addlinkedserver 'srv_lnk
- 流程控制流程:代码执行的过程控制:对代码执行过程的把控三大结构顺序结构:代码默认从上到下,依次执行分支结构:单项分支,双向分支,多项分支,巢
- 依赖模块xlwt下载:pip install xlwt后台模块view.py# 导出Excel文件def export_excel(requ
- 如下拉框的text是<input type=button value=ggg>,那么生成的combobox里
- 本文实例讲述了python关于矩阵重复赋值覆盖问题的解决方法。分享给大家供大家参考,具体如下:import itertoolsimport
- 使用QMoive方法实现导入库文件from PyQt5 import QtCore, QtGui, QtWidgetsfrom PyQt5.
- 一、朋友圈九宫格效果图二、图片基本操作打开要处理的图片判断打开的图片是否为正方形如果是正方形,就进行九等分,如果不是正方形,先用白色填充为正
- 1.安装Apachea) 双击文件Apach_2.2.8_win32-x86-no_ssl.msi,弹出欢迎界面。单NEXT按钮,进入到Li
- 1.Python代码import cx_Oracletns=cx_Oracle.makedsn('127.0.0.1',
- 本文实例分析了python的私有属性和方法。分享给大家供大家参考。具体实现方法如下:python默认的成员函数和成员变量都是公开的,并且没有
- 1、装饰器装饰器(Decorator):从字面上理解,就是装饰对象的器件。可以在不修改原有代码的情况下,为被装饰的对象增加新的功能或者附加限
- 一. 概述首先需要先介绍一下无监督学习,所谓无监督学习,就是训练样本中的标记信息是位置的,目标是通过对无标记训练样本的学习来揭示数据的内在性
- 前言很久以前的博客才发现,发布一下。这个系列以后有时间再做。arp攻击arp路由链表,感兴趣的自行百度,我的博客我的笔记.路由指向介绍两个东
- 概要:要实现点赞功能,需要实现的有:谁进行的点赞、什么时候进行点赞、点赞的对象是谁、每一个对象的点赞数量是多少、点赞过后还需要能够取消点赞,
- 本文实例讲述了Python中迭代的用法,是一个非常实用的技巧。分享给大家供大家参考借鉴之用。具体分析如下:如果给定一个list或tuple,