news 2026/10/19 1:38:21

大麦网自动抢票脚本:部署、参数配置与运行原理

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
大麦网自动抢票脚本:部署、参数配置与运行原理

大麦网自动抢票脚本:部署、参数配置与运行原理

【免费下载链接】Automatic_ticket_purchase大麦网抢票脚本项目地址: https://gitcode.com/GitHub_Trending/au/Automatic_ticket_purchase

Automatic_ticket_purchase 是一个面向大麦网的 Python 抢票工具:登录一次之后,它不再操作页面,而是直接请求大麦的购票接口,循环查询目标演出的票态,并在目标价位转为可购买的那一刻自动完成下单、在终端输出支付链接。它适合两类人:想拆解抓包与接口逻辑的开发者,以及需要盯住某一场演出的普通用户。README 已注明项目停止维护,部分购买流程迁移到了手机端,把它当作学习材料使用更稳妥。

部署大麦网抢票脚本的 3 个步骤

第一步,克隆源码:

git clone https://gitcode.com/GitHub_Trending/au/Automatic_ticket_purchase cd Automatic_ticket_purchase

第二步,安装依赖。requirements.txt 里只有 4 个包(requests、selenium、beautifulsoup4、pyexecjs):

pip install -r requirements.txt

第三步,准备浏览器驱动。Selenium(一个可以操控真实浏览器的自动化库)只在登录环节出场,需要下载与本机 Chrome 版本匹配的 ChromeDriver,按操作系统重命名为chromedriver_windows、chromedriver_linux或chromedriver_mac,放到项目根目录即可,tools.py 会根据platform.system()自动定位驱动路径。

6 个必填参数怎么填

6 个参数都集中在 Automatic_ticket_purchase.py 的__init__方法里,前两个只在账号登录方式下使用:

参数用途填写要点
login_id大麦登录账号填登录名
login_password大麦登录密码填对应密码
item_id演出商品编号取详情页网址中id=后面的一串数字
viewer观演人姓名列表与「常用购票人管理」中登记的姓名逐字符一致
buy_nums购买张数必须等于 viewer 列表长度
ticket_price目标票价要抢的那一档价格,如 180

两处容易踩坑:item_id 区分城市站,同一场演出在不同城市的编号不同,填之前先核对要抢的场次属于哪个站;viewer 必须是平台上已登记的观演人姓名,不是临时写的名字,多一个空格都会被校验拦下,脚本会提示"请检查输入的观演人信息与大麦网观演人信息是否一致"并终止。

一条命令启动,两种登录方式

# 账号密码登录(默认) python Automatic_ticket_purchase.py # 扫码登录 python Automatic_ticket_purchase.py --mode qr

首次登录成功后,cookie(证明已登录的凭证)会写入 cookies.pkl,之后每次运行直接复用,无需再打开浏览器。脚本每次运行都会请求个人信息页校验登录状态,若输出"登录失败, 请检查登录账号信息",删除 cookies.pkl 重新登录即可。

大麦网抢票脚本的完整下单链路

全流程用一行表示:

Selenium 打开登录页 → cookie 写入 cookies.pkl → 循环查询票态 → 命中「立即购买」→ 请求 orderConfirm 组装订单 → 请求 createOrder 提交 → 终端输出支付宝支付链接

链路里有两处值得拆开看:

  1. 接口参数不是写死的。tools.py 的get_api_param会拉取大麦演出页的前端 JS 文件,用正则提取查票与下单所需的两组参数,后续所有请求都由这些参数拼装而成;副作用是大麦一旦更新前端 JS,这个函数就会失效。
  2. 选座流程需要签名。座位图、可售座位、区域信息三个 mtop 接口都要求 sign 字段,签名算法存放在 signcode.js,由脚本通过 execjs 执行后拼进请求。

票态查询会循环调用 detail.damai.cn 的接口,读取目标价位按钮的文字:「即将开抢」就继续轮询;「缺货登记」说明该价位售罄,脚本直接退出;「立即购买」则请求 orderConfirm 组装订单、再提交 createOrder;「选座购买」会先拉取座位图、筛出目标价位的可售座位,挑出与 buy_nums 相同数量的座位再走下单。提交成功后终端输出 alipayOrderId 与支付宝支付链接,完成付款后到"我的大麦 → 交易中心 → 订单管理"里能看到订单。

普通票与选座两类抢票场景

普通票(非选座):目标是开售瞬间拿下指定价位的 2 张票。item_id 指向目标场次,ticket_price 填价位,viewer 写 2 个已登记的观演人,buy_nums 填 2,终端出现支付链接后尽快付款。

选座购买:ticket_price 填目标价位,其余参数同上。脚本自动拉座位图、过滤可售座位并挑出与 buy_nums 一致的座位提交。当前版本只支持同一价位选座,不支持连坐,挑座按遍历顺序取,不保证相邻。

报错排查:5 类常见提示

  • 登录失败→ 账号密码错误,或 cookies.pkl 已过期:删除 cookies.pkl,改用--mode qr重新扫码。
  • 浏览器起不来、selenium 报错→ ChromeDriver 缺失、版本不匹配或命名不对:重新下载与本机 Chrome 匹配的驱动,按系统重命名后放入项目根目录。
  • 购买数量与实际观演人数量不符→ buy_nums 与 viewer 列表长度不相等:把两者改成一致再运行。
  • 请检查输入的观演人信息…→ 姓名与平台登记不一致:对照「常用购票人管理」逐项核对,去掉多余空格。
  • 获取购买必备参数异常→ 大麦前端 JS 更新导致get_api_param解析失效:需对照最新页面 JS 手动重新提取参数,项目已停止维护,这一步只能自行处理。

项目采用 MIT 协议,仅供个人学习参考;使用前请确认遵守大麦网服务条款,账号密码与 cookies.pkl 只保留在自己可信的设备上。若想继续深入,可以把现有轮询逻辑抽出来,接入桌面通知做成开售前持续值守的监控工具。

【免费下载链接】Automatic_ticket_purchase大麦网抢票脚本项目地址: https://gitcode.com/GitHub_Trending/au/Automatic_ticket_purchase

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/10/19 1:38:14

网盘直链下载:LinkSwift 浏览器脚本两分钟跑通完整指南

网盘直链下载:LinkSwift 浏览器脚本两分钟跑通完整指南 【免费下载链接】Online-disk-direct-link-download-assistant 一个基于 JavaScript 的网盘文件下载地址获取工具。基于【网盘直链下载助手】修改 ,支持 百度网盘 / 阿里云盘 / 中国移动云盘 / 天翼…

作者头像 李华
网站建设 2026/10/19 1:37:46

Unity内嵌Office与PDF文档的跨平台渲染方案

简介:本资源是一套面向Unity开发者(尤其聚焦Android平台)的文档文件内嵌显示技术方案,解决教育类、企业展示类应用中需在Unity运行时加载并渲染Word、Excel、PDF、PPT等办公文档的核心需求。方案基于C#脚本集成FreeSpire、Aspose.…

作者头像 李华
网站建设 2026/10/19 1:30:42

电缆损坏数据集实战:YOLO与VOC标注格式转换及训练避坑全解析

简介:面向YOLO系列算法的电缆损坏目标检测数据集,覆盖电缆使用中常见的多种损坏情形,适合电力巡检、工业视觉质检等场景的模型训练与效果验证。压缩包包含两千个文件,其中一千零八十一个为VOC格式标注文件,九百一十九个…

作者头像 李华