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


Posted in Python onJanuary 02, 2018

新手学习Python,之前在网上看见一位朋友写的40行Python代码搞定京东秒杀,想在淘宝上帮女朋友抢玩偶,所以就照猫画虎的写了下淘宝的秒杀脚本,经自己实验可行。直接上代码:

#-*- coding: UTF-8 -*-
import os
from selenium import webdriver
import datetime
import time
chromedriver = "/usr/bin/chromedriver"
os.environ["webdriver.chrome.driver"] = chromedriver
driver = webdriver.Chrome(chromedriver)
def login(uname, pwd):
  driver.get("https://www.taobao.com")
  if driver.find_element_by_link_text("亲,请登录"):
    driver.find_element_by_link_text("亲,请登录").click();
  time.sleep(1)
  if driver.find_element_by_link_text("密码登录"):
    driver.find_element_by_link_text("密码登录").click();
  time.sleep(1)
  if driver.find_element_by_name("TPL_username"):
    driver.find_element_by_name("TPL_username").send_keys(uname);
  time.sleep(1)
  if driver.find_element_by_name("TPL_password"):
    driver.find_element_by_name("TPL_password").send_keys(pwd);
  time.sleep(2)
  if driver.find_element_by_id("J_SubmitStatic"):
    driver.find_element_by_id("J_SubmitStatic").click();
  time.sleep(1)
  driver.get("https://cart.taobao.com/cart.htm")
  if driver.find_element_by_id("J_SelectAll1"):
    driver.find_element_by_id("J_SelectAll1").click()
  time.sleep(3)
  if driver.find_element_by_link_text("结 算"):
    driver.find_element_by_link_text("结 算").click();
  now = datetime.datetime.now()
  print('login success:', now.strftime('%Y-%m-%d %H:%M:%S'))
def buy_on_time(buytime):
  while True:
    now = datetime.datetime.now()
    if now.strftime('%Y-%m-%d %H:%M:%S') == buytime:
      while True:
        try:
          driver.find_element_by_link_text('提交订单').click()
        except:
          time.sleep(1)
    time.sleep(0.1)
#中文账号的时候要给它编码一下,不然会出错
login("中文账号".decode('utf-8'),'密码')
#login("英文账号",'密码')
#buy_on_time('2017-05-06 21:30:01')

代码里面有很多的time.sleep(),主要是防止操作太快,网页没有刷新出来就会读不到下面的元素,由于淘宝可能会出现滑块验证,所以我让输入账号和密码之后休眠了3秒,没有操作的太快,所以没有出现滑块验证。但是去掉那个time.sleep(3)之后,就弹出了滑块验证,不知道为什么。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
利用Python绘制数据的瀑布图的教程
Apr 07 Python
编写Python脚本批量下载DesktopNexus壁纸的教程
May 06 Python
python3实现TCP协议的简单服务器和客户端案例(分享)
Jun 14 Python
解决安装python库时windows error5 报错的问题
Oct 21 Python
Python实现字典排序、按照list中字典的某个key排序的方法示例
Dec 18 Python
使用Python3内置文档高效学习以及官方中文文档
May 19 Python
pytorch-神经网络拟合曲线实例
Jan 15 Python
python同义词替换的实现(jieba分词)
Jan 21 Python
python数据库操作mysql:pymysql、sqlalchemy常见用法详解
Mar 30 Python
pycharm中如何自定义设置通过“ctrl+滚轮”进行放大和缩小实现方法
Sep 16 Python
PyQt5的QWebEngineView使用示例
Oct 20 Python
pytorch实现线性回归以及多元回归
Apr 11 Python
python基于twisted框架编写简单聊天室
Jan 02 #Python
python http接口自动化脚本详解
Jan 02 #Python
详解用python实现简单的遗传算法
Jan 02 #Python
一个Python最简单的接口自动化框架
Jan 02 #Python
利用Hyperic调用Python实现进程守护
Jan 02 #Python
python实现TF-IDF算法解析
Jan 02 #Python
python实现xlsx文件分析详解
Jan 02 #Python
You might like
php利用单例模式实现日志处理类库
2014/02/10 PHP
php读取der格式证书乱码解决方法
2015/06/22 PHP
Discuz不使用插件实现简单的打赏功能
2019/03/21 PHP
PHP笛卡尔积实现原理及代码实例
2020/12/09 PHP
jquery下利用jsonp跨域访问实现方法
2010/07/29 Javascript
jquery 单引号和双引号的区别及使用注意
2013/07/31 Javascript
js星星评分效果
2014/07/24 Javascript
node.js中的buffer.copy方法使用说明
2014/12/14 Javascript
javascript实现数独解法
2015/03/14 Javascript
JavaScript中数据结构与算法(四):串(BF)
2015/06/19 Javascript
jQuery简单获取DIV和A标签元素位置的方法
2017/02/07 Javascript
微信小程序 地图map实例详解
2017/06/07 Javascript
Vue组件通信的四种方式汇总
2018/02/08 Javascript
微信小程序开发之改变data中数组或对象的某一属性值
2018/07/05 Javascript
webuploader实现上传图片到服务器功能
2018/08/16 Javascript
vue实现权限控制路由(vue-router 动态添加路由)
2019/11/04 Javascript
微信小程序登录时如何获取input框中的内容
2019/12/04 Javascript
在Pycharm中使用GitHub的方法步骤
2019/06/13 Python
django 微信网页授权登陆的实现
2019/07/30 Python
python调用接口的4种方式代码实例
2019/11/19 Python
基于Python批量生成指定尺寸缩略图代码实例
2019/11/20 Python
Pytorch中膨胀卷积的用法详解
2020/01/07 Python
在django中使用post方法时,需要增加csrftoken的例子
2020/03/13 Python
浅谈Python __init__.py的作用
2020/10/28 Python
Python爬虫之App爬虫视频下载的实现
2020/12/08 Python
澳大利亚购买最佳炊具品牌网站:Cookware Brands
2019/02/16 全球购物
环保志愿者活动方案
2014/08/14 职场文书
给妈妈洗脚活动方案
2014/08/16 职场文书
村党的群众路线教育实践活动总结材料
2014/10/31 职场文书
法院个人总结
2015/03/03 职场文书
2015年生产车间工作总结
2015/04/22 职场文书
2015年护士节活动策划方案
2015/05/04 职场文书
2019新员工心得体会
2019/06/25 职场文书
2019运动会广播加油稿汇总
2019/08/21 职场文书
Ubuntu安装Mysql+启用远程连接的完整过程
2022/06/21 Servers
Windows Server 2008配置防火墙策略详解
2022/06/28 Servers