这篇文章主要介绍了Python实现淘宝秒杀功能,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
1.安装 Selenium 模块
Selenium支持很多浏览器,我选择的是Firefox浏览器。
安装方法:
①打开cmd;
②输入命令 pip install selenium;
③回车,等待自动安装;
④当最后一行代码出现Successfully install selenium-XX时,表示安装成功。
2. 插件 FireBug
FireBug 是火狐浏览器的一款查看代码元素的插件,可以快速的定位元素,selenium的重点就是元素定位,只有定到位了,才能进行下一步操作。
测试安装成功,按F12出现如下画面,表示firebug已经安装成功了
(现在浏览器基本都自带,可以忽略本步骤)
3.安装 geckodriver
下载完成后,将文件夹解压到python下scripts中即可
测试:在pycharm中输入以下代码,正常弹出百度窗口,即为成功
from selenium import webdriver
driver = webdriver.Firefox()
driver.get('https://www.baidu.com')
**
4.淘宝秒杀代码
**
from selenium import webdriver
import datetime
import time
from os import path
d = path.dirname(__file__)
abspath = path.abspath(d)
driver = webdriver.Firefox()
driver.maximize_window()
def login():
# 打开淘宝登录页,并进行扫码登录
driver.get("https://www.taobao.com")
time.sleep(3)
if driver.find_element_by_link_text("亲,请登录"):
driver.find_element_by_link_text("亲,请登录").click()
print("请在20秒内完成扫码")
time.sleep(20)
driver.get("https://cart.taobao.com/cart.htm")
time.sleep(3)
# 点击购物车里全选按钮
# if driver.find_element_by_id("J_CheckBox_939775250537"):
# driver.find_element_by_id("J_CheckBox_939775250537").click()
# if driver.find_element_by_id("J_CheckBox_939558169627"):
# driver.find_element_by_id("J_CheckBox_939558169627").click()
if driver.find_element_by_id("J_SelectAll1"):
driver.find_element_by_id("J_SelectAll1").click()
now = datetime.datetime.now()
print('login success:', now.strftime('%Y-%m-%d %H:%M:%S'))
def buy(buytime):
while True:
now = datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S.%f')
# 对比时间,时间到的话就点击结算
if now > buytime:
try:
# 点击结算按钮
if driver.find_element_by_id("J_Go"):
driver.find_element_by_id("J_Go").click()
driver.find_element_by_link_text('提交订单').click()
except:
time.sleep(0.1)
print(now)
time.sleep(0.1)
if __name__ == "__main__":
# times = input("请输入抢购时间:")
# 时间格式:"2018-09-06 11:20:00.000000"
login()
buy("2021-01-16 15:08:00.000000")
ps:①注意此版本代码为扫码登陆,如果觉得扫码等待时间过快,可以调整, ②秒杀前需要提前运行代码
到此这篇关于Python实现淘宝秒杀功能的示例代码的文章就介绍到这了!
欢迎大家点赞,留言,转发,转载,感谢大家的相伴与支持
万水千山总是情,点个【在看】行不行
*声明:本文于网络整理,版权归原作者所有,如来源信息有误或侵犯权益,请联系我们删除或授权事宜