大麦网自动抢票脚本 3 步上手:新手快速启动教程
【免费下载链接】Automatic_ticket_purchase大麦网抢票脚本项目地址: https://gitcode.com/GitHub_Trending/au/Automatic_ticket_purchase
开抢前 3 秒,你的手指悬在"立即购买"上——按钮先灰了;页面转着圈加载,等它出来,已经是"已售罄"。手动抢票,考的是手速,更是运气。这篇教程带你把开源项目Automatic_ticket_purchase(大麦网自动抢票脚本)跑起来:登录、蹲点开抢、提交订单这些重复动作交给 Python 脚本,你只需要填好账号和目标票务信息,3 步就能在自己电脑上跑通。
这个项目是干什么的
Automatic_ticket_purchase是一个基于 Python 3 的大麦网抢票脚本:登录后它会持续轮询目标场次的票务状态,一旦"立即购买"按钮亮起,就自动完成下单。
实现思路一句话概括:🎯Selenium 只负责打开浏览器完成登录,之后的抢票全部走 Requests 接口请求,比手动点按钮快得多;BeautifulSoup4 负责解析页面判断登录是否成功。
3 步跑通大麦抢票脚本
第一步:克隆仓库并安装依赖
打开终端,执行下面两行命令:
git clone https://gitcode.com/GitHub_Trending/au/Automatic_ticket_purchase cd Automatic_ticket_purchase pip install -r requirements.txtrequirements.txt 里的四个库(selenium、requests、beautifulsoup4、pyexecjs)会被这条命令一次装齐。
另外要准备一个与你 Chrome 版本匹配的ChromeDriver🔧:下载后放到项目根目录,并按系统重命名——Windows 用chromedriver_windows、macOS 用chromedriver_mac、Linux 用chromedriver_linux,脚本会按系统自动去找这个文件。
第二步:改代码,填好账号和票务信息
所有配置都集中在 Automatic_ticket_purchase.py 里DaMaiTicket类的构造函数中。打开文件,把这一段改成你自己的:
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 # 购买指定票价最容易卡住的两个参数 ✏️:
- item_id:在浏览器打开目标场次页面,看地址栏里
id=后面那串数字,不同城市场次各不同。 - viewer:必须与"我的大麦 - 常用购票人"里的姓名一字不差,不一致脚本会直接报错退出。
第三步:选择登录方式,启动抢票
两种方式,任选其一:
# 默认:账号密码登录 python Automatic_ticket_purchase.py # 或者:扫二维码登录 python Automatic_ticket_purchase.py --mode qr🚀 首次登录成功后,cookies 会被写入cookies.pkl;之后只要这个文件还在,脚本直接复用,不再重复登录。如果提示登录失败,删掉cookies.pkl重新跑一次即可。
脚本跑起来后发生了什么
run()方法的核心是一个"等信号"循环 ⚙️,关键部分节选如下:
# 1. 检查登录状态,失败则提示并退出 login_status = tools.check_login_status(self.login_cookies) if not login_status: print('-' * 10, '登录失败, 请检查登录账号信息', '-' * 10) return # 2. 开抢前持续轮询票务状态 while True: ticket_info, sku_id_sequence, sku_id = self.step1_get_order_info(...) if ticket_sku_status == '立即购买': # 按钮亮起的那一刻 submit_order_info = self.step2_click_buy_now(...) break # 跳出循环,直奔提交 # 3. 选定观影人,提交订单 self.step3_submit_order(submit_order_info, self.viewer)整条抢票链路一看就明白:显示"即将开抢"时它安静等待,变成"立即购买"立刻冲进订单确认页,最后填好观演人提交。抢到的话,终端会打印提示,引导你去"我的大麦 - 订单管理"完成支付。
提升抢票成功率的 4 个技巧
跑通之后,再做这几个调整 💡:
- 卡点启动:用系统定时任务(Windows 任务计划程序 / macOS launchd / Linux cron)在开售时刻前几秒自动触发
python Automatic_ticket_purchase.py,不浪费开售后的第一秒。 - 保持 cookies 有效:抢票前别删
cookies.pkl;登录校验失败时,第一反应是删掉它重新登录一次。 - 多账号并发:把整个项目目录复制多份同时跑,每份配一个账号。注意各副本要独立目录,
cookies.pkl不能混用,否则登录状态会互相覆盖。 - 输出落盘:用
python Automatic_ticket_purchase.py > grab.log 2>&1把输出重定向到文件,事后翻日志,一眼看出卡在登录、接口参数还是提交订单哪一步。
三个核心依赖各干哪件事
| 库 | 在这个项目里的分工 |
|---|---|
| Selenium | 浏览器自动化驱动,这里只负责登录环节:打开页面、填账号、取 cookies 📦 |
| Requests | HTTP 请求主力,轮询票务状态、进订单页、提交订单全靠它,也是脚本快的核心原因 |
| BeautifulSoup4 | HTML 解析库,提取页面标题来校验登录是否成功 |
| pyexecjs | 在 Node 中执行 signcode.js 的签名算法,供选座购票接口使用 |
延伸阅读
- README.md:功能介绍、选座购买说明与完整使用说明。
- tools.py:登录、cookies 存取、接口参数收集的实现;若大麦前端改版导致参数失效,优先从这里排查。
- LICENSE:MIT 许可与免责声明,本项目仅用于个人参考学习,请勿用于黄牛或商业用途。
- 📚 提示:README 注明项目已停止维护、大部分购买方式已迁移至手机端,把它当作"登录 + 接口抢票"范式的完整样例来读,比实际使用更有价值。
【免费下载链接】Automatic_ticket_purchase大麦网抢票脚本项目地址: https://gitcode.com/GitHub_Trending/au/Automatic_ticket_purchase
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考