首页 / 资讯中心 / 文章详情

campus-imaotai i茅台自动预约系统入门教程:Docker 一键部署与每日自动申购完全指南

campus-imaotai i茅台自动预约系统入门教程:Docker 一键部署与每日自动申购完全指南 ★ FEATURED ARTICLE
campus-imaotai i茅台自动预约系统入门教程Docker 一键部署与每日自动申购完全指南【免费下载链接】campus-imaotaii茅台app自动预约每日自动预约支持docker一键部署本项目不提供成品使用的是已淘汰的算法项目地址: https://gitcode.com/GitHub_Trending/ca/campus-imaotaicampus-imaotai 是一个基于 Java Spring Boot 的i茅台 App 自动预约系统面向想摆脱每天定闹钟抢茅台的普通技术用户。它能代管多个 i茅台账号、按你设定的时间自动完成申购并在出结果后通过 PushPlus 推送通知。整个系统支持 Docker 一键拉起本文带你从零部署到把预约跑起来。项目结构速览四个 Maven 模块与五类定时任务四个模块各管一摊整个仓库是一个多模块 Maven 工程业务和后台分离得很干净模块职责campus-common公共组件实体、工具类、Redis 缓存、统一返回结构Rcampus-framework框架核心安全认证、JWT 过滤器、MyBatis-Plus 配置、系统管理表的服务实现campus-admin后台管理端接口用户、角色、菜单、字典、登录日志等 Controllercampus-modular业务核心i茅台账号管理、预约/旅行/结果查询逻辑以及定时任务 CampusIMTTask管理页面由 vue_campus_admin 提供是一套 Vue2 Element UI 的后台登录后左侧菜单包含i茅台用户管理、预约项目、门店列表和系统管理两大块。五个内置定时任务决定一切自动化的骨架就是 CampusIMTTask 里的一组 cron 表达式这也是理解整个系统运转方式的关键任务cron作用数据刷新0 10,55 7,8 ? * *每天 7:10、7:55、8:10、8:55 拉取最新商品列表和门店列表执行预约0 0/1 9 ? * *9 点整到 9:59每分钟扫描所有账号并按其配置执行申购刷新随机分钟0 10 1 ? * *每天凌晨 1:10 批量为随机时间模式的账号抽取当天的预约分钟旅行奖励0 0/1 11 ? * *11 点期间每分钟批量领取小茅运旅行活动奖励结果查询0 5 18 ? * *18:05 查询当日申购结果并推送通知预约动作本身有防限流的细节多个商品 code 依次提交每次之间随机延迟 3~5 秒见 IMTServiceImpl。Docker 一键部署三个前置目录与两条命令环境要求与一键启动前提只有一条机器上装好 Docker 与 Docker Compose。compose 文件位于 doc/docker/docker-compose.yml共编排 4 个容器MySQL 5.7库名campus_imaotai、Redis 6.2、Nginx 1.23 和 campus-server 应用镜像campus/campus-imaotai:1.0.13端口 8160。# 克隆并进入部署目录 git clone https://gitcode.com/GitHub_Trending/ca/campus-imaotai cd campus-imaotai/doc/docker # 一键启动全部服务 docker-compose up -d注意 compose 里各容器都声明了volumes挂载如/docker/mysql/data/、/docker/redis/conf/等这些目录需要提前在服务器上建好应用侧若要挂载外部配置可在/docker/server/conf下创建application-prod.yml说明见 doc/docker/server/conf/README.mdcompose 已通过spring.config.additional-location指过去。数据库导入与登录后台应用连接数据库的账号密码默认与容器一致root / 123456789。容器初始化后需要把表结构导进去-- 建库并导入初始结构含 i_user / i_item / i_shop / i_log 与系统表 mysql -uroot -p123456789 -e CREATE DATABASE IF NOT EXISTS campus_imaotai; mysql -uroot -p123456789 campus_imaotai doc/sql/campus_imaotai-1.0.5.sql该 SQL 除了四张业务表i_user账号、i_item商品、i_shop门店、i_log操作日志还带了完整的 RuoYi 风格系统管理表。导入完成后浏览器访问http://你的服务器IP:8160用默认管理员账号admin / admin123登录即可进入后台。添加 i茅台账号并配置自动预约通过手机验证码登录后台账号进入i茅台 → 用户管理点添加账号会弹出登录框输入已注册 i茅台 的手机号点发送验证码系统直接调 i茅台接口把验证码发到你的手机填验证码 登录成功后token、cookie、deviceId 会被存进i_user表token 有效期按 30 天记录expire_time字段。三个关键字段决定预约行为账号登录后在修改表单里配好三个核心字段9 点的定时任务就会按此执行预约项目 codeitemCode商品编码想约多款可用分隔系统会逐个提交门店策略shopType1自动选本市出货量最大的门店2按你填的经纬度选附近门店经纬度也可以直接选门店后由门店记录自动带出预约执行分钟minute取值 1~59即 9 点第几分钟出手默认 5 分。用户管理列表中还能看到每个账号的类型、token、到期时间以及预约旅行两个快捷操作方便手动触发一次测试。门店和商品数据不用手工维护每天早晨的数据刷新任务会自动从 i茅台 拉取写入你只需在门店列表里按省份、城市筛选查阅用于挑shopType2时想挂靠的门店。进阶配置随机错峰、结果推送与操作日志多账号错峰与随机时间如果你有多个账号不建议全部压在同一分钟。两种方式手动给不同账号设置不同的minute如 5、15、25 分实现错峰打开随机时间预约开关random_minute0表示随机系统每天凌晨 1:10 会统一给这类账号抽取一个当天随机分钟第二天 9 点按抽取值执行。PushPlus 推送与日志回溯给账号填上pushPlusToken后18:05 的结果查询任务拿到申购结果会通过 PushPlus 推送到你的微信不用守着页面。每一次预约、旅行操作都会写入i_log表后台系统管理 → 操作日志里可以按状态成功/异常、操作人、时间过滤查看排查为什么这个号今天没提交成功时直接翻日志即可。常见问题排查与使用须知预约失败的排查顺序先看操作日志确认是未执行还是执行异常。日志里有[预约项目]、[shopId]、[结果返回]三段能直接定位是商品没刷到、门店没匹配上还是接口返回了错误码。再看账号状态i_user里expire_time是否临近 30 天上限token 失效后重新走一次验证码登录即可。最后看数据刷新9 点前商品/门店没刷出来i_item、i_shop为空或版本过旧是常见原因确认 7 点、8 点那几次刷新任务的日志无报错并检查服务器到 i茅台 域名的网络连通性。重要提醒算法已淘汰仅供学习作者已在项目描述中明确说明本项目不提供成品保障使用的是已淘汰的算法。i茅台 服务端接口、加密方式和风控策略持续在变这套实现大概率无法长期稳定出单。请把它当作一个如何用 Spring 定时任务 Docker 编排做自动化流程的学习样例而不要投入生产使用。同时注意使用任何自动化预约手段都可能违反平台用户协议存在账号被封禁的风险账号手机号、token 等敏感数据会明文存在数据库里部署时做好主机访问控制按作者声明内容仅用于学习研究请遵守当地法律法规。campus-imaotai 的价值在于用最朴素的组件cron 定时任务 Docker Compose 一个管理后台把每日自动申购这件小事完整跑通模块划分清晰读 campus-modular 的业务代码就能学会一套可复用的自动化工程写法。如果你只是想研究结构、改造策略它是相当好的起点如果指望它每天帮你抢中茅台那么请保持清醒先验证接口是否仍然有效。【免费下载链接】campus-imaotaii茅台app自动预约每日自动预约支持docker一键部署本项目不提供成品使用的是已淘汰的算法项目地址: https://gitcode.com/GitHub_Trending/ca/campus-imaotai创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
阅读完成 · 觉得有帮助?
咨询建站