关键词搜索

源码搜索 ×
×

Python实现秒杀某宝商品抢购

发布2022-07-07浏览1233次

详情内容

序言

人生苦短,我用Python~
某宝秒杀,用毫秒级的精准度来抢购!
你还在为各种活动秒杀 抢不过别人而烦恼吗?
今天出一期 利用Python抢购秒杀商品的文章

目录

  1. ​ 项目环境
  2. 某宝抢购流程分析
  3. 程序实现思路
  4. 代码实践与梳理

项目环境

  • ​ 操作系统:Windows 10
  • 开发环境:python3.7
  • IDE:Pycharm
  • 自动化模块:Selenium
  • 安装命令:pip install selenium
  • 浏览器版本:Google Chrome 99.0.4844.51
  • 浏览器驱动版本:ChromeDriver 99.0.4844.51

注意: ​ 浏览器驱动版本与浏览器版本要一致!

抢购流程分析

  1. ​ 登录网站
  2. 购物车选中抢购商品
  3. 结算购买
  4. 提交订单

关键:快速完成前面流程,当订单进入提交页面时,付款时间不影响抢购。

程序实现思路

​ 购物流程都是固定没有变化的,因此可以把购物流程步骤用代码编辑好交给selenium去自动执行。

​ 项目结构:驱动直接复制放入项目根路径

1、导入对应类库实现对浏览器的操作

from selenium import webdriver
import datetime    
import time
 
#自动打开浏览器并且最大化窗口
driver = webdriver.Chrome()
driver.maximize_window()

    执行上述代码,浏览器会自动打开并显示如下,证明我们已经开始通过代码操控浏览器了。

    在这里插入图片描述

    2、用代码实现购物流程
    2.1 访问某宝:

    driver.get('https://www.taobao.com')
    
    • 1

    2.2登录某宝:

    if driver.find_element_by_partial_link_text('亲,请登录'):
            driver.find_element_by_partial_link_text('亲,请登录').click()
    
    • 1
    • 2

    2.3 进入购物车

    #跳转到购物车页面
    driver.get('https://cart.taobao.com/cart.htm')
    
    • 1
    • 2

    2.4 选中所有商品

    #寻找全选选项并勾选
    if driver.find_element_by_id("J_SelectAll1"):
          driver.find_element_by_id("J_SelectAll1").click()
    
    • 1
    • 2
    • 3

    2.5 对比时间,提交结算(重点)

    def buy(buy_time):  #buy_time 购买时间
        while True:
            now = datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S.%f')
            print('当前时间:%s'%now)
     
            #判断是否到达抢购时间
            if now>buy_time:
                try:
                    driver.find_element_by_partial_link_text('结 算').click()
                except:
                    pass
            #对比时间,循环提交订单
            while True:
                    try:
                        if driver.find_element_by_link_text('提交订单'):
                            driver.find_element_by_link_text('提交订单').click()
                            print(f"抢购成功,请尽快付款")
                    except:
                        print(f"再次尝试提交订单")
                time.sleep(0.01)
    
      8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20

    ​ 这样就可以通过设定的段时间去定时定点抢购商品啦!

    print(f"再次尝试提交订单")
            time.sleep(0.01)
    
    • 1
    • 2
    [外链图片转存中...(img-oA7Q06eg-1648366756452)]**这样就可以通过设定的段时间去定时定点抢购商品啦!**
    
    • 1
    • 2
    • 3

    这样就可以通过设定的段时间去定时定点抢购商品啦!

    我每天都走越来越刑的路上疯狂试探

    大家给点个免费的关注吧

    感谢 !!!

    相关技术文章

    点击QQ咨询
    开通会员
    返回顶部
    ×
    微信扫码支付
    微信扫码支付
    确定支付下载
    请使用微信描二维码支付
    ×

    提示信息

    ×

    选择支付方式

    • 微信支付
    • 支付宝付款
    确定支付下载