Python 实现淘宝秒杀的示例代码
作者:yooliee 发布时间:2021-02-19 14:25:39
标签:Python,淘宝,秒杀
新手学习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)之后,就弹出了滑块验证,不知道为什么。
来源:http://blog.csdn.net/yooliee/article/details/71302283


猜你喜欢
- lxmllxml 是 Python 的一个库,用于解析和呈现 XML 和 HTML。它支持多种内置和第三方 XML 和 HTML 标记,例如
- 拖拽功能主要是用在让用户做一些自定义的动作,比如拖动排序,弹出框拖动移动等等拖拽的流程动作1、鼠标按下 会触发onmousedown事件2、
- 本文实例为大家分享了Jsp+Servlet实现简单登录注册查询的具体代码,供大家参考,具体内容如下1、注册功能:制作一个注册页面用户输入:用
- 在做项目的时候,遇到这样的数据:"trends": [ { &nb
- 本文实例讲述了Python实现多条件筛选目标数据功能。分享给大家供大家参考,具体如下:python中提供了一些数据过滤功能,可以使用内建函数
- 因为正则不够完善,所以代码中不能直接出现 <? 和 ?>如果是字符串,可以拆开写 "<" + &quo
- 本文实例讲述了python判断字符串是否纯数字的方法。分享给大家供大家参考。具体如下:判断的代码如下,通过异常判断不能区分前面带正负号的区别
- 获取输入的五个点画五边形def pentagonUpdate(): p = {} win = GraphWin(&q
- 当数据库数据量涨到一定数量时,性能就成为我们不能不关注的问题,如何优化呢? 常用的方式不外乎那么几种:1、分表,即把一个很大的表达数据分到几
- 需求在某应用中,需要根据一定的规则生成随机的IP地址,规则类似于192.168.11.0/24这样的CIDR形式给出。实现经过艰苦卓绝的调试
- 在python中,提到如何计算多维数组和矩阵,那一定会想到numpy。numpy定义了矩阵和数组,为它们提供了相关的运算。size中文解释为
- 前言若电脑之前已经安装过vue-cli了,但是版本过低,比方说当前vue-cli的版本为2.9.6,然后我想升级到vue-cli的最新版本4
- 一般我们安装Python的第三方包都会在终端执行下列命令进行安装:pip install 要安装的包名安装成功后发现在PyCharm中仍然存
- 前言:在appium中adb命令的使用必不可少,做android测试嘛,adb命令肯定肯定是每天都要用的啦,所以今天给特地写个博客吧!这里就
- 一:创建迁移在laravel中使用make:migration命令来创建迁移php artisan make:migration creat
- PyMysql使用详解在编写小脚本时,PyMysql是快速连接并操作数据库的一个不错选择。安装pip3 install PyMysql# 可
- 如何显示SQL数据库所有表的名称?<%strSQLDSN = "xxxx"strSQLUser
- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN&
- 在Windows环境下,经常遇到系统Over的情况,如果你在新装了系统和SQL Server 2005后,需要把SQL Server2000
- 一、下载MySQL http://www.mysql.org/downloads我下载的是mysql-noinstall-5.0.67-wi