Python实现淘宝秒杀功能的示例代码


Posted in Python onJanuary 19, 2021

1.安装 Selenium 模块

Selenium支持很多浏览器,我选择的是Firefox浏览器。

安装方法:
①打开cmd;
②输入命令 pip install selenium;
③回车,等待自动安装;
④当最后一行代码出现Successfully install selenium-XX时,表示安装成功。

2. 插件 FireBug

FireBug 是火狐浏览器的一款查看代码元素的插件,可以快速的定位元素,selenium的重点就是元素定位,只有定到位了,才能进行下一步操作。

测试安装成功,按F12出现如下画面,表示firebug已经安装成功了
(现在浏览器基本都自带,可以忽略本步骤)

Python实现淘宝秒杀功能的示例代码

3.安装 geckodriver

下载地址:点击此下载


下载完成后,将文件夹解压到python下scripts中即可

Python实现淘宝秒杀功能的示例代码


测试:在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实现淘宝秒杀功能的示例代码的文章就介绍到这了,更多相关Python实现淘宝秒杀内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
python实现简单的计时器功能函数
Mar 14 Python
python爬虫入门教程--正则表达式完全指南(五)
May 25 Python
Python 用Redis简单实现分布式爬虫的方法
Nov 23 Python
代码分析Python地图坐标转换
Feb 08 Python
python实现聚类算法原理
Feb 12 Python
Django 限制用户访问频率的中间件的实现
Aug 23 Python
CentOS6.9 Python环境配置(python2.7、pip、virtualenv)
May 06 Python
浅谈Pytorch中的自动求导函数backward()所需参数的含义
Feb 29 Python
python+selenium爬取微博热搜存入Mysql的实现方法
Jan 27 Python
PyCharm常用配置和常用插件(小结)
Feb 06 Python
基于注解实现 SpringBoot 接口防刷的方法
Mar 02 Python
python for循环赋值问题
Jun 03 Python
Python爬虫后获取重定向url的两种方法
Jan 19 #Python
详解Python+Selenium+ChromeDriver的配置和问题解决
Jan 19 #Python
VSCODE配置Markdown及Markdown基础语法详解
Jan 19 #Python
python+selenium自动化实战携带cookies模拟登陆微博
Jan 19 #Python
selenium携带cookies模拟登陆CSDN的实现
Jan 19 #Python
django项目中使用云片网发送短信验证码的实现
Jan 19 #Python
windows系统Tensorflow2.x简单安装记录(图文)
Jan 18 #Python
You might like
PHP JSON 数据解析代码
2010/05/26 PHP
php垃圾代码优化操作代码
2010/08/05 PHP
phpmail类发送邮件函数代码
2012/02/20 PHP
PHP中使用FFMPEG获取视频缩略图和视频总时长实例
2014/05/04 PHP
laravel创建类似ThinPHP中functions.php的全局函数
2016/11/26 PHP
JavaScript实现检查页面上的广告是否被AdBlock屏蔽了的方法
2014/11/03 Javascript
简介AngularJS中使用factory和service的方法
2015/06/17 Javascript
JS实现仿新浪微博发布内容为空时提示功能代码
2015/08/19 Javascript
JS实现鼠标滑过折叠与展开菜单效果代码
2015/09/06 Javascript
动态生成的DOM不会触发onclick事件的原因及解决方法
2016/08/06 Javascript
值得分享的JavaScript实现图片轮播组件
2016/11/21 Javascript
jQuery实现一个简单的轮播图
2017/02/19 Javascript
jQuery.cookie.js使用方法及相关参数解释
2017/03/06 Javascript
Vue.js学习笔记之修饰符详解
2017/07/25 Javascript
Vue拖拽组件开发实例详解
2018/05/11 Javascript
layui table 表格上添加日期控件的两种方法
2019/09/28 Javascript
Vue通过配置WebSocket并实现群聊功能
2019/12/31 Javascript
[02:40]DOTA2英雄基础教程 先知
2013/11/29 DOTA
[42:32]完美世界DOTA2联赛PWL S2 LBZS vs FTD.C 第二场 11.27
2020/12/01 DOTA
用Python下载一个网页保存为本地的HTML文件实例
2018/05/21 Python
Python爬取qq空间说说的实例代码
2018/08/17 Python
利用python提取wav文件的mfcc方法
2019/01/09 Python
win10系统下python3安装及pip换源和使用教程
2020/01/06 Python
PyQt使用QPropertyAnimation开发简单动画
2020/04/02 Python
基于tf.shape(tensor)和tensor.shape()的区别说明
2020/06/30 Python
Python之字典对象的几种创建方法
2020/09/30 Python
英国网上超市:Ocado
2020/03/05 全球购物
一份软件工程师的面试试题
2016/02/01 面试题
建筑专业自荐信范文
2014/01/05 职场文书
放飞理想主题班会
2015/08/14 职场文书
【超详细】八大排序算法的各项比较以及各自特点
2021/03/31 Python
JVM钩子函数的使用场景详解
2021/08/23 Java/Android
vue使用localStorage持久性存储实现评论列表
2022/04/14 Vue.js
JS setTimeout与setInterval的区别
2022/04/20 Javascript
详解MongoDB排序时内存大小限制与创建索引的注意事项
2022/05/06 MongoDB
Pygame游戏开发之太空射击实战敌人精灵篇
2022/08/05 Python