百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术文章 > 正文

提前三天教你们python制作万能抢购神器,学不会就准备过光棍节吧

cac55 2025-04-07 12:25 38 浏览 0 评论

目录


前言:


分析(x0)


第一步


第二步


第三步


环境配置


模块安装


selenium的环境配置


Python代码


视频教程




前言:


大家好,我叫善念。自从很多关于python爬虫的文章被下架了后,我的博文是越来越没起色了。我想是因为账号的权重被下降的太多了。如果文章对您有所帮助,我希望大家可以帮忙点个一键三连,顺便动动您发财的小手给我来个如实的评论。




关于这个脚本的话,其实是我18年给学员讲的一个小案例。虽然是针对淘宝的,但实际上它是个万能脚本,为什么呢?因为它是selenium写的,所以说基本都是通用的,无非是改一些元素选择即可。


本文包含文章的思路介绍以及源代码提供,并且包含视频教程!


分析(x0)

私信小编01即可获取大量Python学习资源


首先咱们以淘宝为例,那么你想要抢购商品,


第一步


要做的就是登录账号:



然后呢


第二步


大家一定要选择扫码登录:


理由就是淘宝毕竟是淘宝,你正常的模拟输入账号密码是被检测的,有人可能已经尝试过,我可以这样讲吧,如果把账号拆成三段,密码拆成三段,然后加延迟的话确实偶尔可以登录成功!


但是你要知道为什么是偶尔呢?因为淘宝风控的是你的代理包括你的一个机器环境。所以咱们还是老老实实选择扫码登录吧。



第三步


肯定好多人会认识是搜商品然后.....其实不是的,关于咱们的一个抢购机制咱们一定要明白,那就是以结算为准以结算为准以结算为准,重要的事情说三遍,




何为结算?


其实就是说你只需要点击到结算按钮即可(即使不结算也没事,只要你点击了结算,系统会提醒你必须多长时间内付款,但实际上这个商品只要你付款就已经属于你,名额已经属于你了)


所以咱们需要做的就是提前手动把需要抢购的商品添加到购物车,然后判断时间,如果到点了,那么脚本立马给我无限点击结算即可!




环境配置


模块


  • selenium
  • time


pip install selenium



time 为内置模块无需安装。


selenium的环境配置


这个东西我讲过无数遍了,没办法 。还是得从以前的文章中复制粘贴过来......


关于selenium这个模块,咱们来重点介绍一下:


Selenium是一个用于Web应用程序测试的工具。Selenium测试直接运行在浏览器中,就像真正的用户在操作一样。


如果不能够理解我就讲点白话,如果你是web开发人员,开发好了几百个网站,那么如果你认为的去一个个的测试BUG,是不是很浪费时间?而selenium这个框架就是用来模拟人去自动化操控浏览器的,那么是不是就节约了很多时间呢。


既然selenium能够操控浏览器,那么它们之间必须要有一个桥梁,总不能无中生有吧?


那么操控的浏览器款式不一样,中间的桥梁也是不一样的。比如我更喜欢用chrome浏览器,那么咱们需要下载一个selenium与Chrome的桥梁——Chromedriver插件


下载地址



下载与你当前谷歌浏览器版本最相近的Chromedriver


那么像我的话,下载

即可。


Windows系统需下载32位,其它的自己看着办。点进去下载win32即可。


那么如何让Python与selenium连接起来呢,这里咱们需要配置一个环境变量,就是把Python与selenium处于同一个目录:



到此为止,咱们的环境就搭建好了。


Python代码


from selenium import webdriver
import datetime, time


def login():
    # 打开淘宝登录页,并经行扫码登录
    brower.get("https://www.taobao.com")

    # 等待selenium 框架加载网页完成
    time.sleep(3)

    if brower.find_element_by_link_text("亲,请登录"):
        brower.find_element_by_link_text("亲,请登录").click()
        input('扫码完成后按一下Enter键')

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

    now = datetime.datetime.now()
    print('login success: ', now.strftime('%Y-%m-%d %H:%M:%S'))


# 2. 实现商品购买
def buy(times):
    # 点击购物车里的全选按钮
    while True:
        now = datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S.%f')
        # 对比时间,时间到的话就点击结算
        if now > times:
            while True:
                # 异常处理
                try:
                    if brower.find_element_by_id("J_SelectAll2"):
                        brower.find_element_by_id("J_SelectAll2").click()
                        break
                except:
                    print('找不到全选按钮...')
     
            # 点击结算按钮//*[@id="J_Go"]/span
            while True:
                try:
                    if brower.find_element_by_xpath('//*[@id="J_Go"]/span'):
                        brower.find_element_by_xpath('//*[@id="J_Go"]/span').click()
                        print('结算成功')
                        break
                except:
                    print('找不到结算按钮')
          
            # 提交订单
            # while True:
            #     try:
            #         if brower.find_element_by_link_text('提交订单'):
            #             brower.find_element_by_link_text("提交订单").click()
            #             now1 = datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S.%f')
            #             print('抢购成功时间:%s' % now1)
            #             break
            #     except:
            #         print('我的银行卡没钱...')
            #
            # time.sleep(0.01)#2019-06-09 17:05:00.000000

# 启动函数2019-11-02 14:03:00.000000


if __name__ == "__main__":
    times = input("请输入抢购时间,格式(2019-05-08 20:00:00.000000):")
    brower = webdriver.Chrome()
    login()
    buy(times)

相关推荐

unetbootin中文版:能够将Linux系统装进U盘的U盘启动盘制作工具

unetbootin中文版是一款能够将Linux操作系统装进U盘或移动硬盘的U盘启动盘制作工具,制作好的U盘启动盘能够用于电脑的维护和系统还原等操作,使用起来非常地不错。该软件不会基于操作系统使用特定...

实用之选,实用之改:DELL 戴尔 灵越14CR-4528B 小改作业

昨天发布了一篇三脚架,今天有时间也写写早就准备写的DELL戴尔灵越14CR-4528B作业吧。话说上个笔记本还是2006年底买的华硕A6JE,电脑挺不错的,在家上上网也够用了,就是转轴设计缺陷,容...

教你如何制作一个启动U盘,从此电脑不用找专人做系统

在电脑使用中,老是遇到卡顿,蓝屏,重启等很多故障,大多都是因为自己日常使用习惯而造成的,很多用户在下载软件的时候不知不觉中都被安装许多乱七八糟的软件,当电脑乱七八糟的东西过多的时候我们就重新来装一个系...

8、Deepin操作系统启动盘(系统盘)制作

1、在Deepin官网https://www.deepin.org/zh/download/下载原版Deepin操作系统2、同时在Deepin官网https://www.deepin.org/zh/d...

电脑死机怎么办,电脑如何使用U盘重装系统

电脑死机是我们最常遇到的系统故障,遇到死机时通常重启就可以解决,不过系统损坏引起的死机就只能重装系统,那么电脑死机如何重装系统呢?下面来看看电脑死机怎么办如何使用U盘重装系统_小白一键重装系统官网。 ...

bootmgr is compressed无法启动系统

bootmgriscompressedPressCtrlAltDeltorestart,电脑启动后无法正常开机出现了这样的字样,就是说明你的C盘驱动被压缩解决方法:1、使用系统光盘或者...

新手教程!如何分辨BIOS启动列表(菜单)中的各种启动项

在BIOS启动菜单中识别各类启动项,是新手安装系统或调整启动顺序的必备技能。下面用最直观的方式,为你梳理常见启动项及其含义,帮助你快速上手:一、传统存储设备启动项1.Floppy(软盘驱动器)对应...

带回家的MINI客厅电脑,自学成才,分享U盘装系统教程

刚好老家新装修了房子,客厅买了个大电视,本来是想在客厅弄台主机,接电视玩,大屏幕玩的才爽,但是台式机箱太占地方了。网上逛了一圈,发现有专门的客厅电脑,就搞了一个,外形不错,放客厅很有档次,主要是主机太...

电脑基础知识:BIOS简介及其与Windows操作系统的关系

什么是BIOS?BIOS,全称BasicInputOutputSystem,即“基本输入输出系统”,是一段固化在电脑主板芯片上的底层固件程序。它类似于一款极简化的操作系统,负责电脑开机时的硬件初...

win 7 系统注册表文件丢失或损坏,求不重做系统的解决办法!

粉丝问题解答:win7系统注册表文件丢失或损坏,求不重做系统的解决办法!解决方法:你只需要有启动盘即可,不需要其他的。之所以要求启动盘,是因为下面要对系统文件进行还原覆盖,所以不能用原系统启动。用...

UEFI怎么装Win7 小编呕血解难点!

自从广开言路之后,小编就被你们害苦了,这不,一条评论又让小编彻夜难眠。另外某些小伙伴坐不上沙发后提出要上墙的需求,其实呢只要大家提出的问题具有普遍性、有难度、而且适合小编做微信内容的话,都有机会将你们...

固态攻坚战——ASUS 华硕k45v换固态、拆机清灰教程

作者:蘑菇爱上我现在固态白菜价固态对于电脑体验的提升还是很大的对于固态存储芯片的问题没什么好说的有钱mlc,没钱tlc,不需要考虑什么寿命的问题,我用了一年多的m600,写入才3TB品牌很重要,主控...

MBR启动报错?Win10不重装一样能好!

Win10一遇到启动故障,很多小伙伴可能就会抓瞎,这可怎么弄,我不会修复啊!其实大可不必惊慌,就像这种最常见的Winload启动错误,多半都是MBR分区表丢失造成的(UEFI分区模式的几乎没有这种故障...

从零开始:硬盘手动装系统全攻略

手动安装操作系统是计算机技术必备的基本技能。对于初学者来说,可能会感到有些挑战。但通过掌握硬盘手动装系统方法,你可以亲身体验整个安装过程,进而更好地理解操作系统的工作原理。本文将详细介绍硬盘手动装系统...

电脑开机后显示File:BCD错误0xc000000f

WIN7\WIN8\WIN101、一个win864位PE。这个64位PE的相关文件,路径在boot\BOOT.WIM实机测试,开机后显示File:\EFI\Microsoft\Boot\BCD,...

取消回复欢迎 发表评论: