ARTICLE DETAIL

资讯详情

深耕商务建站与企业官网运营的一线实战洞察。

大麦抢票脚本完整教程:从环境搭建到抢票执行

大麦抢票脚本完整教程:从环境搭建到抢票执行 大麦抢票脚本完整教程从环境搭建到抢票执行【免费下载链接】Automatic_ticket_purchase大麦网抢票脚本项目地址: https://gitcode.com/GitHub_Trending/au/Automatic_ticket_purchase热门演出门票开售倒计时时人工完成选价位、填购票人、点支付的连串操作基本来不及。大麦抢票脚本 Automatic_ticket_purchase 能把这套流程自动化登录后持续用 API 查询目标价位的按钮状态一旦出现立即购买就立即发请求提交订单。 大麦抢票脚本项目定位与功能概览这是一个面向大麦网 PC 端购票的 Python 脚本。V2.0 起只在登录时用 selenium 打开页面其余环节全部通过 requests 直接调用接口省去页面元素加载的等待V2.1 又补充了选座购买。需要留意README 明确标注项目已停止维护、大部分购买方式已迁移至手机端因此它更适合用来学习接口抢票的实现思路而非作为生产工具。核心亮点直接请求大麦 PC 端接口仅登录环节依赖 selenium 打开页面登录状态缓存到 cookies.pkl再次启动无需重新走页面登录自动识别即将开抢 / 缺货登记 / 立即购买 / 选座购买四种按钮状态并分流处理V2.1 支持在指定价位下选座抢票暂不支持连坐对比维度手工页面操作本脚本票况监控手动刷新页面查看循环调用接口读取按钮状态登录状态每次启动重新登录缓存 cookies.pkl 复用下单点击等页面加载后点击解析参数后直接发请求选座购买座图上逐个手动点过滤可售座位后自动挑选 抢票脚本环境搭建与首次运行步骤了解项目分工后就可以在自己电脑上搭环境了整个过程拆成装依赖、改参数、跑起来三步。2.1 环境准备与 ChromeDriver 配置git clone https://gitcode.com/GitHub_Trending/au/Automatic_ticket_purchase cd Automatic_ticket_purchase pip install -r requirements.txt依赖只有 requests、selenium、beautifulsoup4、pyexecjs 四个安装很快。接着下载与本地 Chrome 浏览器版本匹配的 ChromeDriver放到项目根目录并按系统重命名Windows 为 chromedriver_windowsmacOS 为 chromedriver_macLinux 为 chromedriver_linux——tools.py 中的 account_login() 会按系统拼接驱动路径版本不匹配时浏览器起不来。2.2 必改的两个参数item_id 与 viewer最需要手动修改的位置是 Automatic_ticket_purchase.py 中__init__的参数第 23-29 行self.item_id: int 610820299671 # 大麦商品id self.viewer: list [viewer1] # 常用购票人已登记的姓名 self.buy_nums: int 1 # 购买票数, 需与观影人数量一致 self.ticket_price: int 180 # 购买指定票价item_id 是场次的唯一标识同一演出不同城市对应不同的值取大麦商品页 URL 里的 id 参数即可viewer 的姓名必须与我的大麦里登记的常用购票人完全一致否则提交订单时会被拦截2.3 首次运行与登录方式选择python Automatic_ticket_purchase.py # 默认账号密码登录 python Automatic_ticket_purchase.py --mode qr # 改用扫码登录首次运行没有本地 cookies脚本会按所选方式完成页面登录成功后状态写入 cookies.pkl之后再运行会优先读取该文件跳过打开浏览器登录的环节。⚙️ 大麦抢票脚本核心功能登录缓存、状态监控与选座购买三步搭建完成后脚本已经能跑下面拆解它启动后按什么顺序推进方便你改参数时知道每一步在看什么。3.1 登录状态缓存cookies.pkl 复用能做什么避免每次启动都重走页面登录。怎么工作tools.py 的 account_login() 用 selenium 打开登录页成功后把 cookies 写入 cookies.pkl下次运行时 run() 先读取该文件再调 check_login_status() 校验以页面标题是否为我的大麦-个人信息判断有效性。关键细节cookies 过期或失效时会提示登录失败, 请检查登录账号信息此时删除 cookies.pkl 重新登录即可。3.2 按钮状态监控与自动下单能做什么循环轮询目标价位的按钮状态等立即购买出现才启动下单流程。怎么工作step1_get_order_info 请求详情页 subpage 接口拿到 sku 按钮文本run() 里按四种状态分流if ticket_sku_status 即将开抢: continue # 未开售, 继续轮询 elif ticket_sku_status 缺货登记: return False # 目标价位已售空, 退出 elif ticket_sku_status 立即购买: submit_order_info self.step2_click_buy_now(ex_params, buy_serial_number) break # 进入订单确认与提交关键细节命中立即购买后step2_click_buy_now 先从订单确认页解析出下单参数再由 step3_submit_order 匹配观演人信息并 POST createOrder 接口成功后打印 alipayOrderId 与支付宝支付链接支付仍需人工完成。3.3 选座购买流程V2.1 新增能做什么当按钮状态是选座购买时自动拉取座位数据并挑出 buy_nums 个座位提交。怎么工作依次调用 tools.py 中的 get_select_seat_params 获取 id 参数集、get_seat_dynamic_info 拿 stand_id 与价位表请求 sign 由 signcode.js 配合 execjs 计算再用 format_valuable_seatid 过滤掉不可售及非目标价位的座位最后由 pick_seat 顺序挑选。关键细节目前只支持单一目标价位、暂不支持连坐README 有注明目标价位下无可用座位时会提示获取sku_id失败并退出。 抢票脚本核心配置项速查表正式使用前列一遍这张表能提前避开参数错误参数作用示例值注意事项login_id / login_password大麦网登录凭证account / password仅账号登录方式需要item_id目标演出的商品id610820299671取自详情页 URL 的 id 参数不同城市不同viewer常用购票人姓名列表[李四]必须与页面登记信息完全一致buy_nums购买票数1必须等于 viewer 列表长度ticket_price目标票价元180用于匹配价位选座时还用于筛选座位--mode登录方式account / qr默认 account 大麦抢票脚本常见问题与避坑清单配置完仍跑不通时按这张表逐项排查覆盖了绝大多数高频问题现象可能原因解决方式提示登录失败cookies 过期或账号密码错误删除 cookies.pkl 重新登录或改用 --mode qr浏览器无法启动、selenium 报错ChromeDriver 版本与 Chrome 不匹配或文件未放根目录、命名不对下载对应版本驱动重命名为 chromedriver_windows 等并置于项目根目录提示购买数量与实际观演人数量不符buy_nums 与 viewer 列表长度不一致两者改为相等提示请检查输入的观演人信息viewer 姓名与页面常用购票人不一致到我的大麦-常用购票人逐字核对提示手慢了后退出目标价位按钮已是缺货登记换一个价位档修改 ticket_price请求超时、提示获取购买必备参数异常网络波动或接口返回结构变化检查网络后重跑接口变更时需更新 step2_click_buy_now 的解析逻辑 抢票成功率进阶优化方向跑通基础流程后可以按收益从高到低尝试两个低成本优化多价位兜底脚本目前只设一个 ticket_price该价位售空就直接退出。把 run() 的循环改为按 2-3 个价位依次尝试能扩大可成交范围。开售前预热开售前几分钟启动脚本让登录与 get_api_param() 参数获取在开售前完成开售时刻循环只负责查状态减少真正抢票瞬间的耗时。注意保持请求间隔不要高频轰炸接口。项目适合想学习接口自动化思路、或有 PC 端大麦抢票需求的读者。仅供学习研究请遵守平台使用规则、合理使用。【免费下载链接】Automatic_ticket_purchase大麦网抢票脚本项目地址: https://gitcode.com/GitHub_Trending/au/Automatic_ticket_purchase创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表
PREV
查看更多资讯
NEXT
返回资讯列表