i茅台自动预约助手:零门槛完整指南提升茅台预约成功率
【免费下载链接】campus-imaotaii茅台app自动预约,每日自动预约,支持docker一键部署(本项目不提供成品,使用的是已淘汰的算法)项目地址: https://gitcode.com/GitHub_Trending/ca/campus-imaotai
每天 9 点,验证码还没输完,提交时却已被告知预约窗口关闭。campus-imaotai 是面向 i茅台平台的开源自动预约工具:账号集中录入,每天定点自动提交预约请求并拉取结果推送,你只需要等通知。
三步部署:克隆、一键启动、导入数据库
用之前,先在机器上备好 Docker 与 Docker Compose——前者让每个服务跑在容器里,后者负责一键把它们全部拉起来。
| 软件 | 最低版本 | 作用 |
|---|---|---|
| Docker | 20.10 | 容器运行时,免手动安装 MySQL / Redis / Nginx |
| Docker Compose | 2.0 | 一键编排数据库、缓存、前端、预约服务四个组件 |
| 内存 | 4 GB | 保证容器流畅运行,建议 8 GB |
⏰ 三步走,每步一分钟:
第一步,获取代码:
git clone https://gitcode.com/GitHub_Trending/ca/campus-imaotai cd campus-imaotai/doc/docker执行ls,能看到docker-compose.yml即克隆成功。
第二步,一键启动:
docker-compose up -d执行docker ps,确认 mysql、redis、nginx-web、campus-imaotai 四个容器均为 Up 状态。
第三步,导入数据库:
mysql -uroot -p123456789 campus_imaotai < ../sql/campus_imaotai-1.0.5.sql进入 MySQL 执行show tables;,看到 i_item、i_shop、i_user、i_log 等表即成功,SQL 文件位于 doc/sql/。首次启动会拉取镜像,耗时稍长属正常现象。
功能拆解:它替你干的四件自动化任务
打开管理后台,左侧 i茅台 菜单共四项:用户管理、预约项目、门店列表、源码地址。对应它替你干的四件事。
一键录入账号:验证码登录与多账号管理
预约前最大的坎是账号"上线"——i茅台需要手机验证码登录,token 过期就得重新登。
| 操作 | 手动 | 本工具 |
|---|---|---|
| 添加 1 个账号 | 打开 APP 逐一手输 | 页面三步:手机号、验证码、登录 |
| 管理 10+ 账号 | 来回切换,易漏 | 集中列表,状态、到期时间一目了然 |
| token 过期 | 用到才发现 | 列表标注重置时间,过期重新录入即可 |
分钟级自动提单:9点预约、18点05出结果
每天 9:00 起,系统对每个配置好的账号按分钟触发预约,自动选好门店与商品提交;18:05 再自动拉取当日申购结果,并可通过 PushPlus 推送到你手机。
| 操作 | 手动 | 本工具 |
|---|---|---|
| 提交预约 | 必须 9 点守在 APP | 定时触发,分钟级执行 |
| 查看结果 | 手动打开 APP 刷新 | 18:05 自动拉取 + 消息推送 |
| 旅行奖励 | 每天惦记着点 | 上午 11 点档自动领取 |
门店推荐:选出货量最大还是距离最近
门店不用盲选。系统每天自动拉取全省门店投放清单,给你两种策略:本市出货量最大的门店,或离你位置最近的门店。
| 操作 | 手动 | 本工具 |
|---|---|---|
| 查门店出货量 | 只能听消息 | 自动拉取全省投放量 |
| 挑选门店 | 凭感觉 | 两种策略可切换 |
| 算距离 | 地图 APP 逐个量 | 按经纬度自动计算 |
操作日志:每次提交可追溯
每轮任务跑完,成功失败都会落进日志,支持按时间与状态过滤。
| 操作 | 手动 | 本工具 |
|---|---|---|
| 过程留痕 | 没有记录,全靠记 | 每次提交的时间、状态、详情 |
| 问题排查 | 重跑流程靠猜 | 按日志编号直接定位 |
| 结果回溯 | 说不清哪次成功 | 按日期查询,状态可筛选 |
人群对照:个人、家庭、小商户的配置差异
个人玩家:1-2 个账号,不想每天 9 点守着手机。程序员陈晨只录入了自己的账号,minute 填 5,门店类型选 1(本市出货量最大),设置完一天都不用看,18:05 收结果即可。 📌 照抄配置:randomMinute 开启、minute=5、shopType=1。
家庭用户:2-5 个账号,想避免"同一分钟全挂"。周家 3 个账号把 minute 错开为 3、18、32,门店类型两种混用。 📌 照抄配置:每个账号 minute 取不同值,一半 shopType=1、一半 shopType=2。
小微商户:10 个以上账号,图稳定。老何的烟酒行把 12 个账号分两组,核心账号用类型 1,备用账号用类型 2,备注里写清分组。 📌 照抄配置:按 remark 备注分组,核心账号 minute 间隔拉大,注意同 IP 风控。
原理拆解:它凭什么准时完成自动预约
先看技术栈,为什么是它:
- Java:定时任务与异步多线程成熟,适合长期运行的分钟级触发
- Vue:管理界面搭建快,页面看得清也好上手
- MySQL:账号、门店、日志持久化,重启不丢
- Redis:门店清单、会话这类频繁变的数据放缓存,少重复请求外部接口
- Docker:四个服务打包带走,不存在环境差异
📦 整体看,它像一家"24 小时便利店":门面柜台是管理页面,你进来看账号、看门店、查日志;墙上的闹钟是定时任务,1:10 随机第二天的时段、早 7-8 点预热门店数据、9 点预约、11 点领旅行奖励、18:05 取结果,各管各的点;后厨是核心业务,按账号挑门店、选商品执行提交;货架和仓库是 Redis 与 MySQL,门店清单摆货架上(2 小时过期重补),账号日志进仓库;送货车是消息推送,结果一出来就发到手机。
验证码登录,像找物业开临时通行单:你报出手机号,系统去"物业处"(i茅台平台)索要验证码,验证码发到你手机,你在页面填入;平台核验通过后发放 token 与 cookie,当作"临时身份证"存下来;之后的每次自动提交,都用这张身份证。
门店推荐,像挑外卖店:先拿到当日"全省门店投放清单";筛出你申购商品真实在架的门店;选了"本市出货量最大"就按出货量排序取第一,选"距离最近"就按经纬度算距离取最近;本市没有门店时自动回退到本省最近的,最后把门店 id 写进提交请求。实现见 IShopServiceImpl。
成功率优化与常见报错排查
三条优化建议:
- 时段错峰:minute(1-59)就是 9 点的提交分钟数;randomMinute 开启后,系统每天 1:10 自动为每个账号随机一个时段,多账号天然不撞车。
- 账号分组:一部分 shopType=1(本市出货量最大),一部分 shopType=2(离你最近),用备注区分用途。
- 参数调优:外部配置挂载在 /docker/server/conf/application-prod.yml(见 doc/docker/server/conf),改动后重启容器生效:
spring: datasource: url: jdbc:mysql://localhost:3306/campus_imaotai # 数据库连接地址 username: root # 数据库用户 password: 你的新密码 # 改成自己的密码 redis: host: localhost # Redis 地址 port: 6379 # Redis 端口常见故障排查:
- 现象:
docker ps里 mysql 反复重启 可能原因:/docker 下的挂载目录(mysql/data、mysql/conf 等)未提前创建,或端口被占用 处理办法:先建好 /docker 各空目录再执行docker-compose up -d;端口被占则停掉占用服务 - 现象:9 点后日志里没有预约记录 可能原因:账号 token 过期,或账号尚未录入 处理办法:在"用户管理"重新添加账号刷新 token,确认 minute 在 1-59 之间
- 现象:门店列表为空,预约时提示取不到门店 可能原因:门店缓存过期后自动刷新失败,多为访问官方接口网络不通 处理办法:在门店列表页手动点"刷新茅台商店列表",并检查网络连通性
工具仅用于学习研究:请遵守平台规则,使用真实信息,合理控制频率。想每天不再守着手机,可以先从上面三步部署跑起来。
【免费下载链接】campus-imaotaii茅台app自动预约,每日自动预约,支持docker一键部署(本项目不提供成品,使用的是已淘汰的算法)项目地址: https://gitcode.com/GitHub_Trending/ca/campus-imaotai
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考