ARTICLE DETAIL

资讯详情

深耕网站视觉设计与运营推广的一线实战洞察。

大麦抢票自动化工具完整指南:从环境部署到订单提交的流程

大麦抢票自动化工具完整指南:从环境部署到订单提交的流程 大麦抢票自动化工具完整指南从环境部署到订单提交的流程【免费下载链接】ticket-purchase大麦自动抢票支持人员、城市、日期场次、价格选择项目地址: https://gitcode.com/GitHub_Trending/ti/ticket-purchaseticket-purchase 是一个 Python 大麦抢票自动化项目用 Selenium 驱动浏览器、Appium 驱动安卓设备按一份 JSON 配置自动完成登录、选场次、选票档、填观演人并提交订单。它面向希望在开票时刻减少手动操作环节的用户。项目定位大麦抢票脚本覆盖的环节与技术栈手动抢票慢在交互链路长刷新、点场次、点票档、选观演人、点提交五六步要在几秒内完成盯屏幕的人在开票瞬间最容易断档。本项目把这条链路写成脚本按配置文件逐项执行人只在登录时扫一次码其余交给浏览器自动点击。技术栈为 Python 3.9Web 端依赖 Selenium 4.18 与 chromedriver-autoinstallerChromeDriver 按浏览器版本自动匹配移动端依赖 Appium 3.1 与 UiAutomator2 驱动。环节手动操作脚本执行开票后动作刷新页面并逐点点选轮询按钮命中即连续选择重复尝试依赖手速与体力max_retries 控制默认 1000 次登录每次手动输入或扫码扫码一次cookie 持久化复用部署与配置四步跑通 Web 端大麦抢票流程第一步克隆仓库并安装依赖git clone https://gitcode.com/GitHub_Trending/ti/ticket-purchase cd ticket-purchase pip install selenium chromedriver-autoinstallerWeb 端核心依赖只有 seleniumChromeDriver 由脚本按本机浏览器版本自动下载匹配无需手动下载对应版本。第二步运行环境自检python damai/check_environment.py脚本依次检查 Python 版本、selenium 依赖、Chrome 与 ChromeDriver 的版本匹配逐项给出通过或失败提示末行汇总。走移动端路线时改跑./check_environment.sh它额外检查 Node.js、Appium 与 ADB 设备连接。第三步编写抢票配置文件Web 端配置写在damai/config.json启动脚本时读取。必填四项为 index_url、login_url、target_url、users其中 target_url 是演出详情页地址从浏览器地址栏整段复制即可。dates 与 prices 均为数组支持多种写法脚本按顺序尝试并自动跳过带无票、缺货、售罄字样的选项。参数必填说明target_url是详情页地址URL 的 id 即演出标识users是观演人姓名数组长度购票张数city / dates / prices否城市、场次、票档后两者为数组、支持多格式fast_mode否快速模式默认 trueif_listen / if_commit_order否是否监听缺货登记 / 自动提交订单max_retries / page_load_delay否轮询上限默认 1000订单页等待默认 2 秒{ index_url: https://www.damai.cn/, login_url: https://passport.damai.cn/login, target_url: https://detail.damai.cn/item.htm?id123456, users: [张三, 李四], city: 广州, dates: [2026-04-11, 4月11日], prices: [680, 999], fast_mode: true, if_listen: true, if_commit_order: false }首测建议把 if_commit_order 设为 false先确认选对了场次与观演人再打开自动提交。第四步启动脚本并扫码登录cd damai python damai.py首次运行会打开 Chrome 并提示扫码用大麦 App 扫一次后 cookie 写入 damai_cookies.pkl之后再运行直接加载 cookie无需重复扫码。登录完成后脚本进入轮询检测到立即预订 / 立即购买 / 选座购买就进入选择流程。走移动端时在damai_appium/config.jsonc填 keyword、city、date、price 等字段先./start_appium.sh起服务、再./start_ticket_grabbing.sh触发要求 Node.js 20.19 与 Appium 3.1。运行机制轮询、多策略容错与快速模式系统对目标页面做三件事盯按钮、多路兜底、压缩等待。Cookie 复用扫码结果存入 pickle 文件二次启动直接注入省去重复登录的十几秒。按钮轮询开售前按钮显示提交缺货登记脚本每轮快速模式 0.3 秒检测文本变化命中可购按钮即点击并转入跳转等待。多策略定位选观演人依次试 XPath 文本匹配、label 关联复选框、直接点击、JS 精确查找四种方式提交订单另有文本、view-name、class、原始 XPath 五种方式单一定位失效不中断流程。模糊匹配dates、prices 按配置顺序逐项尝试自动跳过无票、缺货、售罄文案页面改版时仍可能命中。快速模式fast_mode 开启后轮询间隔 1 秒→0.3 秒、点击后等待 0.5 秒→0.2 秒详情页四项选择从约 4–7 秒压到 1.1–1.8 秒。进阶技巧与常见问题排障调优技巧首测关自动提交if_commit_order 设为 false核对场次、票档、观演人无误后再打开避免误下单。冗余多格式dates 与 prices 各写两三种写法如4月11日与2026-04-11提升改版后的命中率。慢网加大 page_load_delay观演人列表异步加载网络弱时从 2 秒调到 4–5 秒减少未找到用户告警。回流票保留 if_listen: true缺货时持续轮询放票后重新进入选择环节。常见问题Q报 SessionNotCreatedException / ChromeDriver 版本不匹配A重跑脚本chromedriver-autoinstaller 会按当前 Chrome 版本自动重装或手动brew reinstall --cask chromedriver。Q提示未找到包含 xxx 的元素A多为页面未加载完或用户名含空格/后缀。调大 page_load_delay并在 users 里补一个带空格的变体重试。Q为什么订单页停留 5 分钟才关浏览器A提交后故意停留 300 秒便于核对支付期间按 CtrlC 可提前中断。Q能同时开多个实例吗A技术可行但会放大对页面与账号的压力不建议单机单实例更稳。使用边界与结语遵守大麦网用户协议脚本限定自用不用于批量倒卖配置文件含观演人真实姓名勿外传或提交到公开仓库控制 max_retries 与轮询密度避免高频刷新造成异常请求首次使用先人工过一遍订单确认页再开自动提交。流程入口只有两个文件Web 端damai/damai.py移动端damai_appium/damai_app_v2.py。参数含义与调试输出示例可继续查 完整使用指南(PC端).md.md) 与 README.md。把环境检查跑绿、配置写准剩下的交给轮询。【免费下载链接】ticket-purchase大麦自动抢票支持人员、城市、日期场次、价格选择项目地址: https://gitcode.com/GitHub_Trending/ti/ticket-purchase创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表