Skip to content

Repository files navigation

12306 回家助手 · 上海三松强哥出品

Python License: MIT Platform Stars

一句话: 扫码登录、查余票、盯票;有票就帮你锁座,付款仍回 12306 官网自己完成
不收账号密码 · 不自动付钱 · 开源免费 · 给想回家的人

站台上的一家三口,高铁进站,夕阳把回家的路照亮

票不是一张纸,是晚饭还热着、灯还亮着、有人在站台等你。


写在前面

春运、国庆、周五晚上的那趟车,从来不是「点一下就有」。
页面转圈、余票跳「有」又立刻变「无」、刷新到手酸——我们都经历过。

这个小窗口做的事情很朴素:

替你盯着官网,票一出来就按你选好的车次和人去锁座;
钱,还是你自己付。密码,永远只留在你手机里。

它不是黄牛工具,也不承诺「百分百抢到」。
它只想在你忙着收拾行李、哄孩子、加班收尾的时候,多给你一次把座位留下的机会。

如果它帮你赶上过一趟车,请点一颗 Star ⭐
星星是开源作者夜里改代码时,唯一看得见的站台灯。

联系 / 请喝咖啡:QQ 3031635159


为什么值得 Star?

痛点 以前 现在
余票刷新到手酸 官网一遍遍点查询 窗口里自动盯,有票立刻走锁座
不敢把密码给软件 各种「代抢」要账号 只扫码,密码不进本程序
锁上座还要再登一次付款页 复制订单号、重新登录 打开已带登录的付款页,你自己付钱
表格看不懂 密密麻麻英文接口 和官网一样的蓝表头:有绿、候补橙、无灰
要不要会编程? 各种抓包、命令行劝退 下载 exe 双击,或三行命令

如果你也讨厌「票在眼前晃一下就没了」——
点一下右上角 Star,让更多赶路的人找到这个工具。


你只需要记住这 5 步

扫码登录 → 查询余票 → 监控抢票 → 锁座 → 自己付款

  1. 扫码登录 — 用 12306 App 扫窗口里的码(和官网一样)
  2. 查询余票 — 出发站、到达站、日期,表格立刻出来
  3. 监控抢票 — 选车次、席别、乘车人,点开始
  4. 有票锁座 — 程序按官网顺序提交;点开始时表上已有票会马上锁
  5. 自己付款 — 打开付款页,在时限内付钱。锁座 ≠ 买到

官网同一时间只能有 一笔未完成订单。锁上了请先付款或取消,再盯下一趟。


🟢 小白最推荐:下载 Windows 版(不用装 Python)

不会命令行?下载后双击就行。

  1. 打开 Releases 发布页
  2. 下载其一:
    • Ticket12306-Xiaobai-Setup.exe(安装版,有向导,推荐)
    • Ticket12306-Xiaobai.exe(便携版,双击即用)
  3. 打开后点 扫码登录,用 12306 App 扫窗口里的码
  4. 查余票,或切到「监控抢票」盯票锁座;付款仍在官网自己完成

若 Windows 提示「未知发布者」,点 更多信息 → 仍要运行(开源软件常见提示,可先杀毒扫描再放心用)。

已经会 Python 的朋友,也可以双击 启动窗口.bat,或:

cd otn_protocol
python main.py

上海三松强哥出品 · 源码 MIT 开源
觉得有用请 Star ⭐;请喝咖啡 / 联系加 QQ:3031635159
打包说明见 docs/BUILD_GUI.md


📱 手机版(Android / 鸿蒙)

手机端代码单独放在 mobile/ 目录,与 Windows 桌面版 otn_protocol/ 互不混用

目录 说明
mobile/android/ Android APK 工程(Kotlin)
mobile/harmonyos/ 鸿蒙安装说明(多数机型直接装 APK)
  • 下载:Releases 里将提供 Ticket12306-android.apk(与 .exe 同页)
  • 登录:手机号 / 用户名 + 密码(与官网一致,必要时滑块或短信验证)
  • 鸿蒙:带安卓兼容的华为/荣耀手机,安装方式与安卓相同;详见 mobile/harmonyos/README.md
  • 编译:见 mobile/README.md

🚀 30 秒上手(源码版)

你只需要会这 3 步

① 安装 Python 3.10+(勾选 Add Python to PATH)

② 下载本仓库

git clone https://github.com/lyt26/12306-helper.git
cd 12306-helper/otn_protocol
python main.py

③ 弹出窗口后

  1. 扫码登录,手机确认
  2. 填车站、选日期,点 查询
  3. 切到 监控抢票,选人、选座,点开始;弹窗再确认一次

更细的窗口说明见 otn_protocol/README.md

仓库里还有一个更早的「只监控、响铃、打开官网」窗口:根目录 python main.py
想锁座、想带登录打开付款页,请用 otn_protocol 这一套。


✨ 功能亮点

  • 扫码登录,记住本机会话 — Cookie 只在你电脑上,退出登录就删掉
  • 官网风格余票表 — 车次、站、时刻、席别、票价;列宽跟着窗口走
  • 监控有票自动锁座 — 候补不算有票;查完立刻再查(间隔可改)
  • 付款页带登录 — 用专用浏览器窗口写入当前登录,减少「还要再登一次」
  • 不自动付款 — 钱的决定权永远在你
  • 命令行也能查 / 预演下单 — 真锁座必须你自己加确认,程序不会偷偷提交

📦 GitHub 右侧的 Releases 和 Packages 怎么处理?

很多人第一次开源都会看到侧栏两块红框:ReleasesPackages。可以先不管,不是仓库坏了。

Releases(发布版)

这里已经用来放 Windows 安装包 / 便携 exe

  • 最新下载:Releases
  • 源码更新后,用 tools/build_gui.ps1 再打一版,用 gh release create 挂上附件
  • Packages 仍然不用点(那是 npm/Docker 库,不是这个小窗口)

Packages(软件包仓库)

这是给 npm / Docker / Maven 这类「给程序员安装的库」用的。

本项目是 桌面小工具,不是要发布到 PyPI 或 Docker Hub 的库。
请保持「No packages published」,不要点 Publish。

侧栏可以空着:Watch / Fork 随缘,Contributors 有你自己就很好。真正要做的是把 README 写清楚,让路过的人愿意点 Star。


❓ 小白常见问题

Q:会不会把我的密码上传?
不会。本程序没有密码登录。扫码成功后的登录状态只存在本机:源码运行在 js_reverse_cache/;exe 在 %LOCALAPPDATA%\SanSongQiangGe\12306-helper\。都不会进 GitHub。

Q:锁座了就是买到了吗?
不是。锁座只是官网帮你留座位,一般要在约 30 分钟内自己付款。以支付成功为准。

Q:候补算有票吗?
不算。监控只在真正能预订时才锁。

Q:提示请重新扫码 / 回了网页?
登录可能被查票冲掉。重新扫一次;间隔可改成 0.1 秒。锁座前程序会尝试重新绑定登录。

Q:可以同时锁两趟车吗?
不可以。12306 一个账号同时只能有一笔未完成订单。

Q:能给别人代抢、批量囤票吗?
不可以。本工具仅供个人使用,请遵守 12306 用户规则与当地法律法规。

Q:exe 和安装版有什么区别?

  • Setup.exe(安装版):有安装向导,可装到开始菜单/桌面
  • exe(便携版):下载后双击就能用,不用安装

Q:想请喝咖啡或反馈找谁?
QQ 3031635159。详见 docs/SUPPORT.md


🗺 路线图

  • 扫码登录 + 本机记住
  • 官网风格查询表
  • 监控有票锁座 + 带登录付款页
  • Windows 安装包(放到 Releases
  • 更稳的查票间隔策略
  • 验证码出现时的友好提示

有想法请开 Issue。
Star = 投票:星星越多,安装包越早排上日程。⭐


⚠️ 免责声明

  • 本项目为个人学习与个人出行辅助,与铁路 12306 官方无任何关联
  • 请使用你自己的账号,通过官方 App 扫码完成登录
  • 不要把账号、密码发给任何人(包括开源作者)
  • 程序不会自动付款;锁座后请尽快在官网完成支付或取消
  • 余票变化极快,不保证一定能抢到;以官网结果为准
  • 使用本软件即视为你已阅读并同意自行承担相关风险,并遵守 12306 相关规则

🙏 致谢

  • 每一个春运夜里还在刷票的普通人
  • 点 Star、提 Issue、转发的朋友
  • 出品:上海三松强哥

📄 License

MIT — 自由使用。若它对你有用,请给仓库一颗 Star,这是对开源作者最好的鼓励。


☕ 请强哥喝杯咖啡

如果这个工具让你少刷了一次「无」、多赶上了一趟回家的车,欢迎请强哥喝杯咖啡(自愿)。
加 QQ 3031635159 留言。点 Star ⭐ 同样是很大的支持。

上海三松强哥出品 · https://github.com/lyt26/12306-helper

Star History Chart

About

上海三松强哥出品 · 12306 余票查询 / 扫码登录 / 监控锁座。不收密码,不自动付款。

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages