自制Python淘宝秒杀抢购脚本双十一百分百中
作者:前端仙人 发布时间:2022-01-25 07:02:18
标签:Python,淘宝,秒杀,抢购
大家好,我是不学前端的前端程序员,
事情是这个样子的,前几天不是双十一预购秒杀嘛
由于我女朋友比较笨,手速比较慢,就一直抢不到,她没抢到特价商品就不开心,
她不开心,我也就不能跟着开心,就别提看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加油,
来源:https://blog.csdn.net/weixin_41556756/article/details/121182499


猜你喜欢
- 一、安装一个基于Python的强大的信号库,它既支持简单的对象到对象通信,也支持针对多个对象进行组播支持注册全局命名信号,支持自定义命名信号
- key_len的含义在MySQL中,可以通过explain查看SQL语句所走的路径,如下所示:mysql> create table
- 自定义可迭代的类列表可以获取列表的长度,然后使用变量i对列表索引进行循环,也可以获取集合的所有元素,且容易理解。没错,使用列表的代码是容易理
- 找了 很多 关于表格分页 点击事件 请求, table.render 并不支持监听点击事件,所以我就把 table.render 和 lay
- 这里会讨论令Oracle停机时间最小化的步骤。各种形式的停机--计划的或者是非计划的--总是不断地发生,一个DBA应该有正确的备份策略,这样
- Python开发最牛逼的IDE——pycharm(其实其它的工具,例如eclipse也可以写,只不过比较麻烦,需要安装很多的插件,所以说py
- 1、全局对象所有模块都可以调用1)global:表示Node所在的全局环境,类似于浏览器中的window对象。2)process:指向Nod
- 建立合理的索引提高SQL Server的性能在应用系统中,尤其在联机事务处理系统中,对数据查询及处理速度已成为衡量应用系统成败的标准。而采用
- 日常运维工作中,通常是邮件报警机制,但邮件可能不被及时查看,导致问题出现得不到及时有效处理。所以想到用Python实现发短信功能,当监控到问
- 这是一种相对比较复杂的图表,但是仍然遵循上篇中提出的最基本的思路。本例中使用的定义列表标签dl可能平常我们见得不多,一般我们在做列表的时候通
- 区别:xx:公有变量,所有对象都可以访问;xxx:双下划线代表着是系统定义的名字。__xxx:双前置下划线,避免与子类中的属性命名冲突,无法
- 一、判断大型网站的标准1、pv(page views)网页的浏览量概念 一个网站所有的页面,在24小时内被访问的总的次数。千万级别,百万级别
- 继承是面向对象编程的一个重要的方式,因为通过继承,子类就可以扩展父类的功能。回忆一下Animal类层次的设计,假设我们要实现以下4种动物:&
- 在做开发的朋友特别是和mysql有接触的朋友会碰到有时mysql查询很慢,当然我指的是大数据量百万千万级了,不是几十条了,下面我们来看看解决
- 尽管很多 NoSQL 数据库近几年大放异彩,但是像 MySQL 这样的关系型数据库依然是互联网的主流数据库之一,每个学 Python 的都有
- 要做一个页面上短信息的提示音的功能,本来想用HTML5中Audio+IE下的bgsound来实现,可是发现每种浏览器对Audio的解码类型还
- 1. python-firepython-fire 是一个三方库,可以将任何 Python 对象变成一个命令行接口。使用前先 pip ins
- EF Core 是一个ORM(对象关系映射),它使 .NET 开发人员可以使用 .NET对象操作数据库,避免了像ADO.NET访问数据库的代
- python保留两位小数:In [1]: a = 5.026In [2]: b = 5.000In [3]: round(a,2)Out[3
- 需求:对一个配置文件进行处理,拿出可用的字符来拼接,下面是原始文本,我们要得到这样的结果,redis -h 127.0.0.1 -p 637