news 2026/10/15 5:45:23

Python大麦抢票脚本完整指南:从环境搭建到订单提交,如何跑通整个流程

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Python大麦抢票脚本完整指南:从环境搭建到订单提交,如何跑通整个流程

Python大麦抢票脚本完整指南:从环境搭建到订单提交,如何跑通整个流程

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

Automatic_ticket_purchase 是一个开源的大麦自动抢票脚本:登录成功后持续监控目标演出的库存状态,一旦开售便自动完成下单与订单提交。它适合想学习 Web 自动化的 Python 入门者,以及希望为指定演出预先配置购票流程的用户。

工作原理:浏览器只负责登录,下单走直连

脚本的主逻辑分成两层。登录环节通过 Selenium 打开大麦登录页,输入账号密码(或等待扫码),页面标题变为大麦首页后收集 cookies;之后的所有操作不再依赖浏览器,而是用requests直接请求detail.damai.cn、buy.damai.cn等接口,按"获取商品信息 → 立即购买 → 提交订单"的顺序推进。

有两个设计点值得注意:

  • 登录成功后 cookies 会写入项目根目录的cookies.pkl,再次运行时直接读取该文件,仅在失效时才重新登录。
  • 监控循环根据按钮文案判断目标价位 SKU 的当前状态:"即将开抢"继续等待,"缺货登记"退出,"立即购买"进入下单,"选座购买"走选座分支(V2.1 新增,仅支持指定价位,暂不支持连坐)。

三步完成环境搭建

1. 克隆项目并安装依赖

环境要求 Python 3.6 及以上版本,在终端依次执行:

git clone https://gitcode.com/GitHub_Trending/au/Automatic_ticket_purchase cd Automatic_ticket_purchase pip install -r requirements.txt

依赖清单 只有四项:beautifulsoup4、requests、selenium、pyexecjs。最后一项的作用是通过 Node.js 执行选座所需的签名脚本 signcode.js。

2. 准备 ChromeDriver

登录环节要驱动真实浏览器,因此需要下载与系统、Chrome 版本对应的 ChromeDriver,放到项目根目录,并按操作系统重命名:Windows 下为chromedriver_windows,Linux 下为chromedriver_linux,macOS 下为chromedriver_mac。脚本按系统自动定位驱动文件,命名不符会在启动浏览器时直接报错。

3. 运行脚本

修改好参数(见下一节)后启动:

python Automatic_ticket_purchase.py # 或使用扫码登录 python Automatic_ticket_purchase.py --mode qr

默认走账号密码登录;如果目录中已有上次保存的cookies.pkl,会优先读取该文件并跳过登录页。

参数配置:item_id 与 viewer 必须填对

需要修改的参数都在主脚本DaMaiTicket类的__init__方法中:

参数作用注意事项
item_id商品 ID每个城市、每个日期独立
viewer观影人姓名列表须与账号登记的常用购票人一致
buy_nums购票数量必须与viewer数量相同
ticket_price目标票价用于匹配对应价位的 SKU
login_id/login_password账号与密码仅在账号登录模式下使用

获取item_id的方法:打开目标演出详情页,查看浏览器地址栏,id=后面的数字串即为商品 ID。不同城市、不同日期属于不同商品,务必确认复制的是目标场次。

viewer建议直接从"我的大麦 → 常用购票人管理"页面复制,与登记的实名信息逐字一致。脚本在提交订单前会把填写的观影人与服务端返回的常用购票人列表做比对,不一致会直接终止流程。

从监控到下单:运行后会发生什么

脚本启动后先请求个人信息页,验证 cookies 是否有效;验证通过则进入监控循环,反复拉取商品详情接口、读取目标价位 SKU 的按钮文案。读到"立即购买"后依次获取订单信息、勾选观影人、调用createOrder提交订单。

抢票成功时,终端会打印两行关键内容:

  • alipayOrderId(支付宝订单号)
  • 支付宝支付链接

此时前往"我的大麦 → 交易中心 → 订单管理"确认订单并完成支付即可。若在下单前提示"购买数量与实际观演人数量不符",检查viewer列表长度与buy_nums是否一致。

故障排除:四个常见问题

  1. 浏览器无法启动或立即报错:ChromeDriver 与本地 Chrome 版本不匹配。在"帮助 → 关于 Google Chrome"查看版本号,下载对应版本的驱动。
  2. 提示观演人信息不一致:姓名未逐字匹配。不要手动输入,直接从常用购票人管理页面复制。
  3. 登录反复失败:删除cookies.pkl让脚本重新登录并保存;仍失败则检查账号是否被限制登录。
  4. 接口结构对不上:README 中声明项目已停止维护,大部分购买方式迁移至手机端,需配合抓包处理。若发现返回结构变化,需要自行调整 tools.py 中的解析逻辑,或将项目作为学习参考。

使用须知

本项目采用 MIT License,作者已声明仅供个人参考学习,并对商业使用不承担任何责任。请将其限定于个人学习与技术研究,遵守大麦网平台规则,避免高频请求对服务器造成压力,也不要利用脚本进行囤票、转售等行为。由于项目已停止更新,若计划用于正式演出,建议先在非热门场次验证整个流程的可用性。

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

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

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

AirLLM实战:单卡24GB显存如何跑通70B大模型推理

1. 当大模型装不进显卡时,我在想什么第一次看到 airllm 这个项目名的时候,我正对着一台只有单张 24GB 显存的机器发愁。手上有一个 70B 参数级别的开源模型想跑推理,按常规思路,要么上多卡并行,要么量化到 4bit 以下&a…

作者头像 李华
网站建设 2026/10/15 5:44:37

AI逆向工程实战:用大语言模型自动反编译二进制代码

1. 这个项目到底在做什么第一次看到“AI搞逆向工程”这个说法,我脑子里冒出来的第一个念头是:这玩意儿靠谱吗?逆向工程这活儿,干过的都知道,它不像写业务代码那样有明确的输入输出,更多时候靠的是经验、直觉…

作者头像 李华
网站建设 2026/10/15 5:44:19

AD9513时钟抖动控制与三路延时对齐实战指南

简介:本资源为ADI公司AD9513高性能时钟分配芯片的官方中文数据手册PDF版,面向嵌入式硬件工程师、高速ADC/DAC系统设计人员及射频与精密仪器开发从业者,解决低抖动时钟信号分配、多路相位对齐与可编程分频等关键设计难题。手册全面覆盖器件架构…

作者头像 李华
网站建设 2026/10/15 5:43:52

在线教育公司校招技术笔试攻略:题型分布、高频考点与备考路线

每年校招季,都会有不少学弟学妹来问我同样的问题:在线教育公司的技术类笔试到底怎么准备?算法题占多少?计算机基础考不考?要不要专门去刷那些脑筋急转弯式的逻辑题?说实话,我一开始也以为这类公…

作者头像 李华