☰
i茅台自动预约实战:三步用Docker跑通每日9点申购
2026/10/18 1:12:13 网站建设 项目流程

i茅台自动预约实战:三步用Docker跑通每日9点申购

【免费下载链接】campus-imaotaii茅台app自动预约,每日自动预约,支持docker一键部署(本项目不提供成品,使用的是已淘汰的算法)项目地址: https://gitcode.com/GitHub_Trending/ca/campus-imaotai

某天早上8:59,我手指悬在i茅台首页上方,整点一到请求直接排队,等刷开页面名额已经没了。后来我折腾了 campus-imaotai 这个项目,一个i茅台自动预约工具,按定时任务替多个账号自动提交申购,整套环境靠Docker拉起。

它解决了什么问题:手动申购的四个痛点

  • 整点手速拼不过服务器:每天9点申购开抢,人工点按的响应速度有限。项目把申购改成定时任务,9点整分触发,自动向接口提交预约请求。
  • 多账号来回切换容易漏:管理端支持批量维护用户,每人独立配置。系统给每个用户分配一个执行分钟,用户之间默认间隔3秒串行执行,不用手动盯着换。
  • 门店选哪家心里没底:申请到没有库存的门店等于白刷。系统自动拉取门店列表和库存,按配置策略选"本市出货量最大"或"本省距离最近"的门店。
  • 结果要隔天才知道:操作日志逐条记录每次请求与返回,18:05 还会批量回查申购结果,成功失败在后台直接看。

三步部署:完整环境跑起来

总共3步,前两步各一条命令。

  1. 拉取代码:
git clone https://gitcode.com/GitHub_Trending/ca/campus-imaotai
  1. 进入 Docker 目录启动全套服务:
cd doc/docker docker-compose up -d

MySQL、Redis、Nginx 和应用容器一起拉起,应用端口8160,Nginx 在80端口代理管理端页面,配置见 doc/docker/。

  1. 浏览器打开服务器80端口,登录管理端,在"用户管理"里添加i茅台账号:发送验证码、填验证码登录后补全省份、城市、经纬度和预约项目代码。

功能深挖:按使用场景过一遍

用户管理:验证码登录加多账号批量维护

场景:需要新加账号,或一次性管理家人、朋友的好几个号。操作:用户管理页点"添加账号",填手机号后发验证码,登录成功后系统自动保存 userId、token、设备号;也支持"直接新增"手动填 token。每位用户有独立的省份、城市、经纬度、预约项目代码和到期时间。效果:所有账号统一落库,定时任务每天从库里读名单执行,后续维护只改后台字段即可。

门店选择:本市出货量与省内距离两种策略

场景:同一个商品在全省多家门店投放,申到哪家的库存直接决定成败。操作:系统在每天 7:10 和 8:55 两个时间窗刷新版本号、门店列表和商品库存;申请前按用户的"类型"字段计算——类型1先选本市出货量最大的门店,本市没有再降级到省内最近;类型2直接用经纬度按球面距离算省内最近门店。效果:请求固定发到有实际库存的门店,避免无效申购。

全天时间线:从1:10随机分钟到18:05回查结果

场景:从申购到出结果跨一整天,不想逐小时盯。操作:每天 1:10 系统把每个用户的预约分钟随机打散到 9:00–9:59;9点档内每分钟跑一轮,只执行被分到该分钟的用户;11点档自动处理小茅运旅行奖励;18:05 批量回查申购结果并写日志,完整调度见 CampusIMTTask.java。效果:打开操作日志页,每个账号的请求内容与成功状态一目了然,失败原因也直接记在日志内容里。

实战技巧:5条配置建议

  • 提前核对账号到期时间:用户表有"到期时间"字段,token 过期前在添加账号弹窗里重新登录刷新,否则当天请求必失败。
  • 预约项目代码支持多商品用 @ 分隔:系统会依次申请并随机间隔3~5秒,不用为防连发而只填一个商品。
  • 门店缓存有效期2小时:7:10 和 8:55 两个刷新窗口内如果服务器刚好重启,可在门店列表页手动点"刷新茅台商品列表"补数据。
  • 控制账号总量:用户间固定间隔3秒,账号多了之后整个9点档会跨越多分钟,不要手动加塞额外触发。
  • 服务器时区保持 Asia/Shanghai:所有定时任务都按本地时间触发,时区偏了执行点整体漂移。

避坑指南:3个常见报错与处理

  • 日志报签名错误或接口异常:原因是 i茅台 App 升级后接口签名变化(项目说明里也提到当前算法已淘汰);解决是从最新版 App 重新抓包获取签名盐与 AES 密钥,更新到 IMTServiceImpl 后重新部署。
  • 全部请求挤在 9:00 整被限流:原因是把预约分钟手动改成了固定0;解决是保留 1:10 的随机打散任务,让请求摊开到整个9点档。
  • App 更新后登录返回异常:原因是 MT-APP-Version 还在用 Redis 里的旧版本号;解决是重启 campus-imaotai 容器,启动时会自动重拉版本号并写缓存。

campus-imaotai 适合想完整看一遍"定时任务 + 多账号管理 + 缓存策略"落地流程的开发者,也适合有多账号、需要每天9点自动申购的用户。建议先用1~2个账号跑一周、逐日核对操作日志,确认账号状态和门店缓存都稳定后,再逐步加量。

【免费下载链接】campus-imaotaii茅台app自动预约,每日自动预约,支持docker一键部署(本项目不提供成品,使用的是已淘汰的算法)项目地址: https://gitcode.com/GitHub_Trending/ca/campus-imaotai

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

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询