某宝秒杀,用毫秒级的精准度来抢购!
还记得前段时间情人节,各种产品活动秒杀。结果自然少不了被对象一番折磨 (注意:不是new出来的哈,也不是橡胶的,实实在在的女朋友) 于是乎彻底激发了我的求生欲,在这种关头我是必须发挥出自己的才能了,这才有了这篇毫秒级秒杀的精品出来,话不多说直接进入主题
项目环境
操作系统:Windows 10
开发环境:python3.7
IDE:Pycharm
自动化模块:Selenium
安装命令:pip install selenium
浏览器版本:Google Chrome 99.0.4844.51
浏览器驱动版本:ChromeDriver 99.0.4844.51
浏览器驱动版本与浏览器版本要一致!
某宝抢购流程分析
1,登录网站
2,购物车选中抢购商品
3,结算购买
4,提交订单
关键:快速完成前面流程,当订单进入提交页面时,付款时间不影响抢购。
程序实现思路
购物流程都是固定没有变化的,因此可以把购物流程步骤用代码编辑好交给selenium去自动执行。
项目结构:驱动直接复制放入项目根路径
1,导入对应类库实现对浏览器的操作
# author: # ide: PyCharm from selenium import webdriver import datetime import time #自动打开浏览器并且最大化窗口 driver = webdriver.Chrome() driver.maximize_window()
执行上述代码,浏览器会自动打开并显示如下,证明我们已经开始通过代码操控浏览器了。
2,用代码实现购物流程
2.1 访问某宝:
driver.get('https://www.taobao.com')
2.2登录某宝:
if driver.find_element_by_partial_link_text('亲,请登录'): driver.find_element_by_partial_link_text('亲,请登录').click()
2.3 进入购物车
#跳转到购物车页面 driver.get('https://cart.taobao.com/cart.htm')
2.4 选中所有商品
#寻找全选选项并勾选 if driver.find_element_by_id("J_SelectAll1"): driver.find_element_by_id("J_SelectAll1").click()
2.5 对比时间,提交结算(重点)
def buy(buy_time): #buy_time 购买时间 while True: now = datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S.%f') print('当前时间:%s'%now) #判断是否到达抢购时间 if now>buy_time: try: driver.find_element_by_partial_link_text('结 算').click() except: pass #对比时间,循环提交订单 while True: try: if driver.find_element_by_link_text('提交订单'): driver.find_element_by_link_text('提交订单').click() print(f"抢购成功,请尽快付款") except: Python交流群:748989764 print(f"再次尝试提交订单") time.sleep(0.01)
这样就可以通过设定的段时间去定时定点抢购商品啦!
print(f"再次尝试提交订单") time.sleep(0.01)
[外链图片转存中...(img-oA7Q06eg-1648366756452)]
**这样就可以通过设定的段时间去定时定点抢购商品啦!**
原文地址:https://www.cnblogs.com/tuixiulaozhou/p/16791364.html
1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长!
2. 分享目的仅供大家学习和交流,请务用于商业用途!
3. 如果你也有好源码或者教程,可以到用户中心发布,分享有积分奖励和额外收入!
4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
5. 如有链接无法下载、失效或广告,请联系管理员处理!
6. 本站资源售价只是赞助,收取费用仅维持本站的日常运营所需!
7. 如遇到加密压缩包,默认解压密码为"gltf",如遇到无法解压的请联系管理员!
8. 因为资源和程序源码均为可复制品,所以不支持任何理由的退款兑现,请斟酌后支付下载
声明:如果标题没有注明"已测试"或者"测试可用"等字样的资源源码均未经过站长测试.特别注意没有标注的源码不保证任何可用性