某宝秒杀,用毫秒级的精准度来抢购!
你还在为各种活动秒杀 抢不过别人而烦恼吗
应粉丝要求 今天出一期 利用Python爬虫 抢购秒杀商品的文章
目录
1,项目环境
2,某宝抢购流程分析
3,程序实现思路
4,代码实践与梳理
项目环境
操作系统: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,导入对应类库实现对浏览器的操作
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:
? ? ? ? ? ? ? ? ? ? print(f"再次尝试提交订单")
? ? ? ? ? ? time.sleep(0.01)
这样就可以通过设定的段时间去定时定点抢购商品啦!

print(f"再次尝试提交订单")
? ? ? ? time.sleep(0.01)
[外链图片转存中...(img-oA7Q06eg-1648366756452)]
??? ?**这样就可以通过设定的段时间去定时定点抢购商品啦!**

政胤每天都走在刑的第一线
大家给点个免费的关注吧
感谢
先自我介绍一下,小编13年上师交大毕业,曾经在小公司待过,去过华为OPPO等大厂,18年进入阿里,直到现在。深知大多数初中级java工程师,想要升技能,往往是需要自己摸索成长或是报班学习,但对于培训机构动则近万元的学费,着实压力不小。自己不成体系的自学效率很低又漫长,而且容易碰到天花板技术停止不前。因此我收集了一份《java开发全套学习资料》送给大家,初衷也很简单,就是希望帮助到想自学又不知道该从何学起的朋友,同时减轻大家的负担。添加下方名片,即可获取全套学习资料哦