黄牛杀手 抢票脚本 V3.0

黄牛杀手 抢票脚本 V3.0

介绍

现在黄牛太tm多了,根本抢不到票 为了解决这个问题,开发了这个脚本,支持大麦网,淘票票、缤玩岛等多个平台

依赖

  • selenium (4.10.0以下版本)

pip install selenium ======= 现在黄牛太tm多了,根本抢不到票 为了解决这个问题,开发了这个脚本,支持大麦网,淘票票、缤玩岛等多个平台

功能介绍

  1. 模拟手机端人工操作

    • 使用Appium来模拟手机端的操作,包括模拟用户的点击、滑动、输入等行为
  2. 多平台支持

    • 使用Selenium,通过分析不同平台的页面结构和API,实现多平台支持
  3. 多账户抢票

    • 在配置文件中管理多个账户的信息,包括用户名、密码、抢票策略
    • 多线程或异步编程技术,同时处理多个账户的抢票任务
  4. 切换代理IP池

    • 支持代理IP池,Scrapy和ProxyPool,实现IP的动态切换
  5. 定时预约场次

    • 用定APScheduler,设置定时任务来执行预约场次的操作
    • 灵活地配置定时任务的执行时间,并实现任务的自动触发和执行

测试中的功能

  • 验证码识别:百度OCR,识别抢票过程中出现的验证码

更新记录

  • 2023年4月1日:
    • 增加选座购买功能,自动抢票功能和代理IP功能,提高抢票成功率和稳定性
  • 2022年9月15日:
    • 优化抢票算法,支持设置抢票时间段,增加灵活性和稳定性
  • 2022年8月31日:
    • 添加抢票失败后的重试机制,修复已知bug,提升系统稳定性和可靠性

配置文件说明

  • date: 日期序号,仅支持一个日期选择。
  • sess: 场次序号,优先选中的场次序号放在前,填写的场次序号若大于实际场次序号,则会选中实际场次序号最大的。
  • price: 票档序号,优先选中的票档序号放在前,填写的票档序号若大于实际票档序号,则会选中实际票档序号最大的。
  • real_name: 实名者序号,已经弃用。
  • nick_name: 用户昵称,已经弃用。
  • ticket_num: 购买票数,购买票数与观影人序号的数量务必一致。
  • viewer_person: 观影人序号(预先添加实名观影人),优先选中的序号放在前,填写的序号若大于实际序号,则会放弃选中。
  • driver_path: 驱动地址。
  • damai_url: 大麦首页地址,用于登录。
  • target_url: 购票的实际地址,需要使用手机端的地址,域名: https://m.damai.cn/ 开头。
  • queue: 列入待抢的链接地址。
  • auto_buy: 是否开启自动抢票功能,true表示开启,false表示关闭。
  • auto_buy_time: 自动抢票时间,格式为 "HH:MM:SS",例如 "08:30:00"。
  • retry_interval: 自动抢票失败后重试间隔时间,单位为秒,默认为 5 秒。
  • proxy: 是否使用代理IP进行请求,true表示使用,false表示不使用。
  • proxy_ip: 代理IP地址。
  • proxy_port: 代理IP端口号。

注意事项

  1. 账号必须先做好实名制认证,并添加至少一个实名制的人的信息。
  2. 第一次打开后会进入登录页面,需要手动选择扫码登陆。
  3. 如果太久没用,需要先清空目录下的 cookie 文件,然后在重新登录。

使用说明

环境准备

  1. 安装所需要的环境。
  2. 需要下载与系统安装对应的 ChromeDriver 驱动并配置(也可以改用其他浏览器驱动)。

    下载地址: http://chromedriver.storage.googleapis.com/index.html

  3. 初次登录没有 cookies,默认登录方式为账号密码登录方式,可改成其他方式进行登录,如扫码或短信登录。
  4. 设置自动抢票功能时,请确保填写了 auto_buy_time 字段,并且时间格式正确。
  5. 设置代理IP功能时,请确保填写了 proxy_ip 和 proxy_port 字段,并且格式正确。

多平台抢票

多账户抢票支持

为了满足用户同时使用多个账户进行抢票的需求,跨平台票务抢票脚本 V2.1 引入了多账户抢票功能。以下是如何配置和使用多账户进行抢票的详细说明:

配置多账户

  1. 账户信息配置:在脚本的配置文件中(通常是 config.json 或 settings.ini),您需要为每个账户设置一个账户标识符,并为其指定登录凭据和其他必要的个人信息。例如:
<<<<<<< main
{"date": [14],"sess": [1,2],"price": [1,2,3,4,5,6],"real_name": [1],"nick_name": "","ticket_num": 1,"viewer_person": [1],"driver_path": "C:\\Program Files\\Google\\Chrome\\Application\\chromedriver.exe","damai_url": "https://www.damai.cn/","target_url": "https://m.damai.cn/damai/detail/item.html?itemId=708250808776&spm=a2o71.home.snatch_ticket.item&from=appshare&sqm=dianying.h5.unknown.value.hlw_a2o71_28004194","comment": {"title": "comment 下的所有内容为自定义注释,无实际含义","date": "日期序号,仅支持一个日期选择","sess": "场次序号,优先选中的场次序号放在前,填写的场次序号若大于实际场次序号,则会选中实际场次序号最大的","price": "票档序号,优先选中的票档序号放在前,填写的票档序号若大于实际票档序号,则会选中实际票档序号最大的","real_name": "实名者序号,已经弃用","nick_name": "用户昵称,已经弃用","ticket_num": "购买票数,购买票数与观影人序号的数量务必一致","viewer_person": "观影人序号(预先添加实名观影人),优先选中的序号放在前,填写的序号若大于实际序号,则会放弃选中","driver_path": "驱动地址","damai_url": "大麦首页地址,用于登录","target_url": "购票的实际地址,需要使用手机端的地址,域名: https://m.damai.cn/ 开头","queue": {"title": "列入待抢的链接地址","zhoujielun_0403": "https://m.damai.cn/damai/detail/item.html?itemId=607865020360&from=appshare&sqm=dianying.h5.unknown.value.hlw_a2o71_28004194&prev_page=8hu5vjnq54&spm=a2o71.28004194.785344.item_horizontal_3"}
=======
"accounts": {"account1": {"username": "user1@example.com","password": "password1","target_url": "https://m.damai.cn/","auto_buy_time": "08:30:00"},"account2": {"username": "user2@example.com","password": "password2","target_url": "https://m.taopiaopiao.com/","auto_buy_time": "08:30:00"
>>>>>>> main}
}

运行多账户抢票 在配置完多账户后,您可以通过以下方式启动脚本,以同时使用所有配置好的账户进行抢票: python ticket_script.py --multi-account

脚本将会遍历 accounts 配置中的每个账户,分别登录并尝试抢票。请确保每个账户的配置都是正确的,以避免在抢票过程中出现错误。

使用多账户抢票时,请确保每个账户都遵守目标平台的使用条款,避免违规操作导致账户被封禁。 确保每个账户都已经完成了必要的实名认证(如果目标平台要求)。 根据目标平台的不同,登录方式(扫码、短信验证等)可能会有所不同,请根据实际情况调整账户配置。

多账户抢票策略

为了在多个票务平台(如大麦网、淘票票、缤玩岛等)上运行抢票脚本,您需要按照以下步骤进行操作:

  1. 配置文件准备:为每个平台准备一个独立的配置文件,例如config_damai.jsonconfig_taopiaopiao.json等。
  2. 平台特定设置:在每个配置文件中,设置该平台特定的target_url、登录方式等信息。
  3. 运行脚本:在运行时,通过命令行参数--config指定要使用的配置文件,例如:python ticket_script.py --config config_taopiaopiao.json

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/396769.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

2.类和对象(上)

1. 类的定义 1.1 类定义格式 • class为定义类的关键字&#xff0c;Stack为类的名字&#xff0c;{ }中为类的主体&#xff0c;注意类定义结束时后面分号不能省略。类体中内容称为类的成员&#xff1a;类中的变量称为类的属性或成员变量; &#xff08;类和结构体非常像&#…

LVS原理——详细介绍

目录 lvs简介 LVS作用 LVS 的优势与不足 LVS概念与相关术语 LVS的3种工作模式 LVS调度算法 LVS-dr模式 LVS-tun模式 ipvsadm工具使用 lvs简介 LVS 是Linux Virtual Server的简称&#xff0c;也就是 Linux 虚拟服务器,是一个极好的负载均衡解决方案&#xff0c;它将一个…

计数排序,桶排序,基数排序

计数排序&#xff1a; 找出数据中的最大值和最小值&#xff0c;并创建哈希表&#xff0c;把 数据-最小值 作为数组的下标访问哈希表并标记数量&#xff0c;标记完后&#xff0c;遍历哈希表&#xff0c;当表中的值大于0&#xff0c;把 **下标最小值 (下标元素-最小值)**还原数据…

LLVM 寄存器分配

概述 基本寄存器分配器是四种寄存器分配器中最简单的寄存器分配pass实现(<llvm_root/livm/lib/CodeGen/RegAllocBasic.cpp>) 但麻雀虽小&#xff0c;五脏俱全&#xff0c;基本寄存器分配器中实现了根据溢出权重确实虚拟寄存器优先级、按优先级分配物理寄存器&#xff0…

韦东山瑞士军刀项目自学之UART

放自己一星期假回家&#xff0c;回来继续准备秋招。 本章记录关于UART协议的相关知识笔记。平时主要还是基于HAL库开发&#xff0c;但笔记里也讲了韦老师介绍的如何控制寄存器来设置UART的参数。 以及一些UART防止采集的抖动设置的一些策略与波特率与比特率的区别等。

文件共享服务NFS(服务名nfs,端口tcp/2049)

目录 前言 配置文件 工作原理 NFS服务器的配置 查看服务器是否安装 查看服务器状态 开启服务 编写配置文件 客户端挂载 前言 NFS&#xff08;Network File System&#xff09;是一种分布式文件系统协议&#xff0c;它允许网络中的不同计算机共享文件和目录&#xff0…

使用tailwindcss轻松实现移动端rem适配

本示例节选自小卷全栈开发实战系列的《Vue3实战》。演示如何用tailwindcss所支持的rem体系轻松实现一个仿b站移动端头部导航栏rem适配。 友情声明 学习分享不易&#xff0c;如果小伙伴觉得有帮助&#xff0c;点赞支持下。满30赞&#xff0c;将随文附赠录屏讲解&#xff0c;感谢…

树莓派4/5:运行Yolov5n模型(文末附镜像文件)

〇、前言 因国内网络问题&#xff0c;可直接烧录文末镜像文件&#xff0c;或者按照本教程进行手动操作。 一、实验目的 在树莓派4B运行Yolov5n模型。 二、实验条件 1、Windows 11计算机&#xff1a;安装了Mobaxterm 2、树莓派4B&#xff1a;64Bit Lite OS&#xff0c;安装了…

案例:Nginx + Tomcat集群(负载均衡 动静分离)

目录 案例 案例环境 案例步骤 部署Tomcat服务器 部署Nginx服务器 实现负载均衡和读写分离 日志控制 案例 案例环境 操作系统 IP 地址 角色 CentOS 192.168.10.101 Nginx服务器&#xff08;调度器&#xff09; CentOS 192.168.10.102 Tomcat服务器① CentOS 1…

uniapp 对于scroll-view滑动和页面滑动的联动处理

需求 遇到一个需求 解决方案 这个时候可以做一个内页面滑动判断 <!-- scroll-y 做true或者false的判断是否滑动 --> <view class"u-menu-wrap" style"background-color: #fff;"><scroll-view :scroll-y"data.isGo" scroll-wit…

贷奇乐漏洞学习 --- 两个变态WAF绕过

代码分析 第一个WAF 代码 function dowith_sql($str) {$check preg_match(/select|insert|update|delete|\|\/\*|\*|\.\.\/|\.\/|union|into|load_file|outfile/is, $str);if ($check) {echo "非法字符!";exit();}return $str;} 实现原理 这段PHP代码定义了一个…

uniapp切换同一个子组件时,钩子函数只进了一次

给子组件添加不同的 “key” 值&#xff0c;当 key 值改变时&#xff0c;Vue 会认为这是一个不同的组件&#xff0c;并重新创建它 props: ["L1Id"],// 方式1: 使用keycomputed: {// 切换子组件时,发现created、mounted等钩子函数只会进一次,或者用 keykey(){this.ref…

CSS技巧专栏:一日一例 19 -纯CSS实现超酷的水晶按钮特效

CSS技巧专栏:一日一例 19 -纯CSS实现超酷的水晶按钮特效 今天给大家分享一个纯CSS按钮水晶按钮,效果很赞,希望对大家有所帮助。 本例图片 案例分析 这个按钮看起来效果很赞,我们分析一下它由几个层组成: 1. 按钮本体:渐变层+按钮文字 2.用before伪元素实现高光层+内…

线程与多线程(二)

线程与多线程&#xff08;二&#xff09; 一、线程互斥1、相关概念 二、互斥锁1、介绍2、使用场景3、初始化&#xff08;1&#xff09;函数&#xff08;2&#xff09;概念 4、销毁&#xff08;1&#xff09;函数&#xff08;2&#xff09;概念 5、加锁&#xff08;1&#xff09…

SAM-Med2D 大模型学习笔记(续):训练自己数据集

1、前言、数据集介绍 SAM-Med2D大模型介绍参考上文&#xff1a;第三章&#xff1a;SAM-Med2D大模型复现-CSDN博客 本文将使用SAM-Med2D大模型训练自己的数据集 关于SAM-Med2D大模型官方demo数据集的介绍上文已经介绍过&#xff0c;这里简单回顾下 其中data_demo为数据集的目…

leetcode171. Excel 表列序号,进制转换

leetcode171. Excel 表列序号 给你一个字符串 columnTitle &#xff0c;表示 Excel 表格中的列名称。返回 该列名称对应的列序号 。 例如&#xff1a; A -> 1 B -> 2 C -> 3 … Z -> 26 AA -> 27 AB -> 28 … 示例 1: 输入: columnTitle “A” 输出: 1 示…

电商平台产品ID|CDN与预渲染|前端边缘计算

技术实现 都是通过ID拿到属性&#xff0c;进行预渲染html&#xff0c;通过 oss 分发出去 详情页这种基本都是通过 ssr 渲染出来&#xff0c;然后上缓存 CDN 分发到边缘节点来处理&#xff0c;具体逻辑可以参考 淘宝——EdgeRoutine边缘计算&#xff08;CDNServerless 边缘计算…

国内真正意义上的OpenAI,最强多模态大模型 MiniCPM-V 2.6 发布

最近这一两周看到不少互联网公司都已经开始秋招提前批了。不同以往的是&#xff0c;当前职场环境已不再是那个双向奔赴时代了。求职者在变多&#xff0c;HC 在变少&#xff0c;岗位要求还更高了。 最近&#xff0c;我们又陆续整理了很多大厂的面试题&#xff0c;帮助一些球友解…

二叉树的最大深度

二叉树的最大深度 思路&#xff1a; 法一&#xff1a;深搜 也就是递归 要想清楚边界条件 好久没写深搜了 回忆下怎么写。 突然就悟了&#xff1a; /*** Definition for a binary tree node.* struct TreeNode {* int val;* TreeNode *left;* TreeNode *rig…

2024年6月 青少年机器人技术等级考试理论综合试卷(二级)

202406 青少年等级考试机器人理论真题二级 第 1 题 如图&#xff0c;这是飞机起飞时的机翼示意图&#xff0c;下列说法正确的是&#xff1f;&#xff08; &#xff09; A&#xff1a;机翼上侧所受的气压为0 B&#xff1a;机翼受到向下的力的作用 C&#xff1a;机翼下侧所受…