python编写淘宝秒杀脚本

python编写淘宝秒杀脚本最近想抢冰墩墩的手办和钥匙圈,但是同志们抢的速度太快了,无奈,还是自己写脚本吧。添加火狐浏览器插件Omnibug是一个插件,可以简化web度量实现的开发。检查每个传出请求(由浏览器发送)的模式;如果出现匹配,URL将显示在开发人员工具面板中,并进行解码以显示请求的详细信息。在火狐浏览器的插件中直接搜索、下载即可安装geckodriver在python中使用selenium爬取动态渲染网页,这个过程之中需要安装浏览器驱动geckodrivergeckodrivergithub链接将下载后到

大家好,又见面了,我是你们的朋友全栈君。

最近想抢冰墩墩的手办和钥匙圈,但是同志们抢的速度太快了,无奈,还是自己写脚本吧。

添加火狐浏览器插件

Omnibug是一个插件,可以简化web度量实现的开发。检查每个传出请求(由浏览器发送)的模式;如果出现匹配,URL将显示在开发人员工具面板中,并进行解码以显示请求的详细信息。

在火狐浏览器的插件中直接搜索、下载即可
在这里插入图片描述

安装geckodriver

python中使用selenium爬取动态渲染网页,这个过程之中需要安装浏览器驱动geckodriver

geckodriver github链接

在这里插入图片描述
将下载后到的文件解压,将geckodriver.exe放入火狐浏览器的安装目录中
在这里插入图片描述
将火狐浏览器的目录地址,写入环境变量中
在这里插入图片描述

python代码

from selenium import webdriver
import datetime
import time

# 启动火狐浏览器的驱动器
driver = webdriver.Firefox()
# 最大化浏览器
driver.maximize_window()

# 传入用户名密码,登录淘宝
def login():
    # 打开淘宝
    driver.get("https://www.taobao.com")

    # 查找文本,登录
    if driver.find_element_by_link_text("亲,请登录"):
        driver.find_element_by_link_text("亲,请登录").click()

    print("请在30秒内完成扫码")
    time.sleep(30)

    driver.get("https://cart.taobao.com/cart.htm")
    time.sleep(3)

    # 点击购物车里全选按钮
    if driver.find_element_by_id("J_SelectAll1"):
        driver.find_element_by_id("J_SelectAll1").click()
    time.sleep(3)
    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')
        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(1)
        print(now)
        time.sleep(1)


if __name__ == "__main__":
    # 登录
    login()
    # 设置抢购时间
    buy('2022-02-07 16:00:00')

代码整体思路

首先打开淘宝主页,通过文字“亲,请登录”,查找到登录链接,访问登录链接,扫码完成登录,扫码时间为30秒。这里有个问题,本来是打算用账号密码登录的,但是在测试过程中用账号密码登录多了就需要验证,目前无法用代码实现验证。

登录之后,访问购物车,全选,然后购买,提交订单即可。

使用方法

将需要抢购的商品放入购物车,设置抢购时间,使用时需保证购物车中只有需要抢购的商品。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/133266.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 大数据建设背景介绍

    大数据建设背景介绍随着移动互联网、物联网和云计算技术的迅速发展,开启了移动云时代的序幕,大数据(BigData)也越来越吸引人们的视线。正如1982年世界预测大师、未来学家约翰.奈斯比特(John.Naisbitt)在他的著作中所提到的:“我们现在大量生产信息,正如过去我们大量生产汽车一样”、“人类正被信息淹没,却饥渴知识”,等等诸的预言均在当下得到了充分的证实,这也恰恰说明,世界正处一个信息爆照的时代。Internet的出现缩短了人与人、人与世界之间的距离,整个世界连成一个“地球村”,人们通过网络无障碍交流交换信息和

    2022年5月30日
    44
  • 企业级发卡网源码下载带代理系统授权搭建教程

    企业级发卡网源码下载带代理系统授权搭建教程  发卡网源码,英文名:Automaticshippingsourcecode,适用于构建在互联网上用于虚拟商品自动发货和交易的网购平台。往往根据用途和规模不同,分为:企业发卡网源码和个人发卡网源码,其核心功能为自动发货和自动收付款,类似于线下的无人售货机。  发卡网只适用于虚拟物品的交易,无法完成实物的交易,由于实物涉及快递时长,不符合发卡网方便快捷的特点。要想搭建一个运转良好的发卡网是需要做大量工作的,但最重要最基础的是搭建的发卡网源码稳定且bug少,不然很难提供频繁的发卡交易服务。 

    2022年7月14日
    33
  • linux对外开放端口_如何通过命令开启端口

    linux对外开放端口_如何通过命令开启端口本文目录一、引言二、管理防火墙的命令2.1、开启防火墙2.1.1首先查看防火墙状态2.1.2开启防火墙2.1.3设置开机自启2.1.4重启防火墙2.1.5查看防火墙设置开机自启是否成功2.2、开启特定端口2.2.1添加端口2.2.2重新载入2.2.3查看2.2.4删除2.2.5关闭防火墙2.2.6查看开启的所有端口2.2.7查看服务的监听一、引言在Centos7.x中防火墙由firewalld来管理,以前为了方便,把防火墙都关闭了,因为现在项目

    2022年9月7日
    0
  • SQL Server中quotename()函数的用法

    SQL Server中quotename()函数的用法原文链接:https://blog.csdn.net/zengcong2013/article/details/43485837首先,sqlserver里的标识符有一定的规则,比如你createtableabc123(…)那么中间含有空格,它不是符合规则的。你会写做createtable[abc123](….)即以[]来定界标识符。quotename…

    2022年7月25日
    3
  • 【数据库】谈谈group by[通俗易懂]

    【数据库】谈谈group by[通俗易懂]【数据库】谈谈group by

    2022年4月25日
    73
  • 2020年开始,中国程序员前景一片灰暗,是这样吗?[通俗易懂]

    2020年开始,中国程序员前景一片灰暗,是这样吗?[通俗易懂]背景:汇总了下老王在其他平台的原创回复,欢迎关注老王原创公众号【软件老王】,关注不迷路。1、感觉中国程序员前景一片灰暗,是这样吗?老王观点:(1)个人认为谈不上灰暗,过去十年是互联网快速爆发的十年,每个行业发展了一定程度,都会慢慢趋于平稳,软件行业也不例外。(2)其实最近也有这种感觉,感觉软件行业比以前难做了,随着政府推动的互联网+,软件行业已经进入各行各业,认为后面可能会像美国一样,成为一个基础行业,待遇和机会也会趋同于其他行业,但是不知道能不能像美国那样,到50多岁了还能写的上代码。(3

    2022年10月11日
    0

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号