news 2026/9/28 2:23:05

大麦抢票脚本快速上手:3步配置参数,开售即自动下单

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
大麦抢票脚本快速上手:3步配置参数,开售即自动下单

大麦抢票脚本快速上手:3步配置参数,开售即自动下单

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

热门演出中午开售,页面瞬间挤满,购买按钮一直转圈。人工点完确认,已经过去好几秒,票已经没了。

这个项目是一个开源大麦抢票脚本,当前版本V2.1,支持普通抢票与选座购买两种流程。登录后通过3次接口调用完成"取票信息→确认订单→提交订单"。

🎯 这个项目能帮你做什么

思路是把"在浏览器里点按钮"换成"直接调接口":登录后,脚本用requests向大麦网接口发HTTP请求,不再等待页面渲染和元素加载。它循环轮询票价状态,按钮文本从"即将开抢"变为"立即购买"的瞬间,自动走完确认订单和提交订单。V2.1新增了选座购买,但目前只支持指定价位的座位,暂不支持连坐。要提醒一句:README里写明项目已停止维护,大部分购买方式已迁移到手机端并需配合抓包,所以把它当作接口自动化的学习样例更有价值。

方式响应时间成功率上手门槛
手动页面操作受页面加载和手速限制,单轮约数秒受反应速度限制,容易错过开售瞬间无
本脚本(V2.1)接口直连,跳过页面渲染与等待状态变为"立即购买"即触发下单,高于手动需Python环境+ChromeDriver

🚀 三步跑起来:装依赖、改配置、试跑

第一步:装依赖。克隆仓库后安装requirements.txt里固定版本的4个包:requests发请求、selenium控制浏览器登录、beautifulsoup4解析HTML、pyexecjs执行signcode.js里的签名逻辑。

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

登录依赖Chrome窗口,还要下载与本机Chrome版本匹配的ChromeDriver,重命名为chromedriver_windows(macOS用_mac、Linux用_linux),放到项目根目录。

第二步:改配置。打开 Automatic_ticket_purchase.py 的__init__,把6个参数换成你的信息:

self.login_id: str = 'account' # 大麦网登录账户名 self.login_password: str = 'password' # 大麦网登录密码 self.item_id: int = 610820299671 # 商品id self.viewer: list = ['viewer1'] # 在大麦网已填写的观影人 self.buy_nums: int = 1 # 购买影票数量 self.ticket_price: int = 180 # 购买指定票价

唯一的硬性规则:viewer列表长度必须等于buy_nums,否则脚本启动时直接退出。

第三步:试跑。先用一场非热门且已开售的演出走完整流程:

python Automatic_ticket_purchase.py

预期结果:首次运行弹出Chrome自动登录;成功后项目目录生成cookies.pkl,下次运行直接读取、跳过登录窗口。

🔍 关键参数逐个讲

item_id(商品ID)

  • 是什么:演出的唯一标识,同一巡演每个城市一个ID。
  • 去哪获取:打开演出详情页,地址栏中id=后面的数字就是。
  • 怎么写:self.item_id: int = 610820299671。
  • 常见错误:拿别的城市的ID来抢,接口返回的场次根本不是你的目标场。

viewer(购票人列表)

  • 是什么:下单时使用的购票人,需与账户里"常用购票人"完全一致。
  • 去哪获取:大麦网"我的大麦"→常用购票人管理,照着抄名字。
  • 怎么写:self.viewer: list = ['张三', '李四'],一人对应一张。
  • 常见错误:名字与网站有一个字或空格不同,运行时会提示"请检查输入的观演人信息与大麦网观演人信息是否一致"。

buy_nums(购买张数)

  • 是什么:本次购买的票张数。
  • 去哪获取:按自己的实际需求定。
  • 怎么写:self.buy_nums: int = 2。
  • 常见错误:viewer写了2人却只填1,脚本直接报"购买数量与实际观演人数量不符"并退出。

ticket_price(目标票价)

  • 是什么:要抢的票价档位,脚本会把接口返回的各SKU价格逐一比对,只匹配相等的那一档。
  • 去哪获取:详情页上列出的所有票价。
  • 怎么写:self.ticket_price: int = 580,精确数值匹配。
  • 常见错误:脚本一次只盯一个票价,该档售空就提示"手慢了,该票价已经售空"并退出,想多档位监控需要自己改造。

login_id / login_password(账号密码)

  • 是什么:大麦网账号和密码,仅首次登录使用。
  • 怎么写:直接填字符串;改用扫码登录时可不填。
  • 常见错误:保留默认的'account'/'password'直接运行,登录必然失败。

🔑 登录状态与运行细节

--mode参数决定登录方式,两种用法:

  • python Automatic_ticket_purchase.py:账号密码登录,弹出Chrome窗口自动填入账号密码并提交,适合熟悉自己账号的用户。
  • python Automatic_ticket_purchase.py --mode qr:扫码登录,弹窗口用大麦App扫码,不用在页面上碰密码,适合首次运行或容易触发安全验证的场景。

状态保存机制:登录成功后,脚本通过 tools.py 里的save_cookies把cookie序列化成cookies.pkl存到项目目录;下次启动优先读取它并调用check_login_status校验,通过就直接进入抢票循环,不再弹浏览器。验证是否生效:目录里出现cookies.pkl且运行不再弹登录窗口,说明状态已保存;若打印"登录失败, 请检查登录账号信息",删掉cookies.pkl重新登录即可。

✅ 成功率调优清单

  1. 换有线网络 → 请求延迟比WiFi更低更稳,减少开售瞬间的抖动。
  2. 同步系统时钟(Windows执行w32tm /resync) → 避免本机时间偏差导致错过开售时刻。
  3. 开售前1-2分钟启动脚本 → 脚本已进入轮询循环("即将开抢"状态会持续等待),变"立即购买"的瞬间自动下单。
  4. 选一个大概率有票的票价档位 → 票价是精确匹配,选中的档位就是唯一抢票目标。
  5. 关掉无关的浏览器标签和后台程序 → 给Chrome登录窗口和requests请求让出内存与带宽。
  6. 提前用非热门演出完整试跑一遍 → 验证登录、参数获取、订单确认全链路,实战时只拼时间。

🛠 遇到问题先看这里

症状原因解决步骤
运行报Chrome启动失败或驱动相关错误ChromeDriver与浏览器版本不匹配,或文件命名/位置不对下载匹配版本,重命名为chromedriver_windows/_mac/_linux,放到项目根目录
提示"请检查输入的观演人信息与大麦网观演人信息是否一致"viewer姓名与"常用购票人"对不上进"我的大麦"→常用购票人管理,逐字符核对后修改
提示"登录失败, 请检查登录账号信息"cookies.pkl过期,或首次登录未成功删除cookies.pkl,重新运行再登录一次
提示"手慢了,该票价已经售空"目标票价档已售罄把ticket_price换成仍有库存的其他档位
提示"购买数量与实际观演人数量不符"buy_nums与viewer列表长度不一致两者改成相同,如2个观演人买2张

使用边界与合规

  • 仅限个人购票用途,遵守大麦网服务条款与项目MIT License。
  • 请求频率保持在合理范围,不要多账号并发轮询。
  • README明确鄙视黄牛式商业用途,请勿将代码用于倒卖牟利。

如果你是想学"登录→轮询→下单"这条接口自动化链路,这个仓库结构很清晰;如果是准备实战,先接受它的维护状态,并把全流程完整测试一遍再上场。

项目资源:官方文档 · 核心脚本 · 接口工具库 · 依赖列表

免责声明:本项目仅用于个人学习与研究,请遵守平台规则及相关法律法规,勿用于商业倒卖。

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

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

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