V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
爱意满满的作品展示区。
fancymax
V2EX  ›  分享创造

Mac 上的订票/抢票/检票工具-- 12306ForMac

  •  4
     
  •   fancymax ·
    fancymax · 2015-12-15 21:47:10 +08:00 · 20475 次点击
    这是一个创建于 3264 天前的主题,其中的信息可能已经有所发展或是发生改变。

    经过三四个月的时间,总算是在 mac 上实现了订票的功能。最花时间的是两方面:

    • 一是 12306 的接口,各种坑,各种被封 IP 。
    • 另外一个就是 Cocoa ,写界面相当麻烦,而且是现学现卖,一路过来特别折腾。

    下面我做的一些界面截图,还比较原始,留个纪念。

    之后要加上一些抢票的功能,有兴趣的人欢迎留言

    第 1 条附言  ·  2015-12-16 09:46:21 +08:00
    谈谈做 Mac 版的初衷。

    最早是因为女朋友,她家是湖南的。从深圳到湖南那票叫一个难买。
    去年别人介绍 买了一款心蓝的订票软件(可惜没有 Mac 版的),装在我的虚拟机上,刷票刷了两个月总算买到回湖南的两张高铁票。
    不过我的 Mac 也基本上开着虚拟机开了两个月,挺心疼的。另外女朋友用 macbook 基本没法开虚拟机。

    所以就想搞个 Mac 版的订票 /检票 /抢票 软件,借鉴一下心蓝的一些功能。
    第 2 条附言  ·  2015-12-16 09:53:53 +08:00
    抢票我感觉基本看运气和软件关系不是太大,用手机抢完全 OK ,个人认为 Mac 版的功能应该偏重于检票。实时监控 60 天,基本上 90%可以买到票。

    想听听大家的想法~~
    111 条回复    2015-12-25 16:33:44 +08:00
    1  2  
    bingwenshi
        1
    bingwenshi  
       2015-12-15 22:02:23 +08:00
    赞,真棒
    crs0910
        2
    crs0910  
       2015-12-15 22:29:45 +08:00
    👍 需要
    taresky
        3
    taresky  
       2015-12-15 22:31:36 +08:00
    需要需要
    steveshi
        4
    steveshi  
       2015-12-15 22:36:28 +08:00 via iPhone
    需要!😱
    whtsky
        5
    whtsky  
       2015-12-15 22:42:58 +08:00
    难道只有我找不到下载地址吗
    code4life
        6
    code4life  
       2015-12-15 22:43:59 +08:00
    赞一个,
    要是开源让大家一起完善,是不是会更好?
    Tink
        7
    Tink  
       2015-12-15 22:44:18 +08:00
    @whtsky 楼主还没发布吧
    sewyu
        8
    sewyu  
       2015-12-15 22:53:47 +08:00
    👍,好样的,就缺 Mac 版呢
    chendeshen
        9
    chendeshen  
       2015-12-15 22:54:42 +08:00
    any link?
    ipconfiger
        10
    ipconfiger  
       2015-12-15 22:55:45 +08:00
    1024
    wunianSky
        11
    wunianSky  
       2015-12-15 22:57:27 +08:00
    强烈支持
    HiHi
        12
    HiHi  
       2015-12-15 23:13:57 +08:00
    兹瓷
    CheungKe
        13
    CheungKe  
       2015-12-15 23:19:08 +08:00
    没有抢票功能吗?
    maemolee
        14
    maemolee  
       2015-12-15 23:23:32 +08:00
    点赞!
    my101du
        15
    my101du  
       2015-12-15 23:23:36 +08:00
    这么好的东西,居然没有下载地址。。。。
    先别加抢票功能了(我怀疑 12306 的程序员还是会定时来 V2EX 等网站逛逛的),先把能查看、刷新的版本放出来吧!
    qq432591
        16
    qq432591  
       2015-12-15 23:29:41 +08:00
    速度地址那 地址那 地址那!!!!
    yanyanlong
        17
    yanyanlong  
       2015-12-15 23:37:30 +08:00
    来个地址,最近正需要呢
    Emi
        18
    Emi  
       2015-12-15 23:42:55 +08:00
    正需要。地址地址!!!
    syy
        19
    syy  
       2015-12-16 00:03:03 +08:00
    正需要。地址地址!!!
    ywisax
        20
    ywisax  
       2015-12-16 01:20:18 +08:00
    需要!求地址!
    pynix
        21
    pynix  
       2015-12-16 02:29:24 +08:00
    搞验证码才有意思
    banewu
        22
    banewu  
       2015-12-16 04:43:27 +08:00
    厉害
    v1024
        23
    v1024  
       2015-12-16 07:43:22 +08:00 via iPhone
    12306 的难点唯有验证码
    weer0026
        24
    weer0026  
       2015-12-16 08:00:36 +08:00
    期待成品~
    cxl008
        25
    cxl008  
       2015-12-16 08:01:25 +08:00
    开源吧,大家一起干才过瘾
    whistle
        26
    whistle  
       2015-12-16 08:08:09 +08:00
    同求
    fancymax
        27
    fancymax  
    OP
       2015-12-16 08:13:56 +08:00
    @my101du 如果只是订票的话,开发 Mac 没什么用啊,随便一个 web 客户端和手机端都做的很好了。

    感觉电脑的优势在于检票 和 抢票。
    Monad
        28
    Monad  
       2015-12-16 08:14:44 +08:00
    兹词!
    fancymax
        29
    fancymax  
    OP
       2015-12-16 08:15:53 +08:00
    谢谢大家支持,现在还是半成品不稳定,没法放出来。

    要是做好了,第一时间放到这里。

    今年是没戏了,明年应该可以。
    cai314494687
        30
    cai314494687  
       2015-12-16 09:08:59 +08:00
    感兴趣啊,:+1:
    somkanel
        31
    somkanel  
       2015-12-16 09:13:04 +08:00
    支持一下!
    thankfish
        32
    thankfish  
       2015-12-16 09:13:16 +08:00
    楼主加油!
    zichen0422
        33
    zichen0422  
       2015-12-16 09:16:04 +08:00
    我需要, 楼主加油...
    pheyer
        34
    pheyer  
       2015-12-16 09:25:04 +08:00
    哇, 这个好,虽然我不用
    fyhqy
        35
    fyhqy  
       2015-12-16 09:29:24 +08:00
    这个好,虽然我不用,楼主加油
    pheyer
        36
    pheyer  
       2015-12-16 09:39:37 +08:00
    可惜这已经过了抢票的最佳时机了
    caiya21
        37
    caiya21  
       2015-12-16 09:40:04 +08:00
    点赞
    cxl008
        38
    cxl008  
       2015-12-16 09:44:38 +08:00
    我也来发张图
    cxl008
        39
    cxl008  
       2015-12-16 09:44:47 +08:00
    补上
    fancymax
        40
    fancymax  
    OP
       2015-12-16 09:48:39 +08:00
    @cxl008 官网的 app ,你这是在抓包吗? 感觉调 12306 接口就是个苦力活。
    fancymax
        41
    fancymax  
    OP
       2015-12-16 09:49:25 +08:00
    @pheyer 备战明年,做的烂是不敢拿出来的,免得被人喷
    cxl008
        42
    cxl008  
       2015-12-16 09:50:07 +08:00
    抓智行的一套 script.js 里面有详细的接口定义。只不过这个 js 需要解密一下
    fancymax
        43
    fancymax  
    OP
       2015-12-16 09:50:55 +08:00
    @cxl008 找几个人一起搞可以,开源可能不太合适。你看 github 上基本没有开源的可以正常订票的代码。
    fancymax
        44
    fancymax  
    OP
       2015-12-16 09:51:32 +08:00
    @chendeshen 不好意思,做的比较烂,还不敢拿出来,备战明年
    cxl008
        45
    cxl008  
       2015-12-16 09:51:39 +08:00
    @fancymax 可以私聊
    cxl008
        46
    cxl008  
       2015-12-16 09:52:12 +08:00
    @fancymax web 有些高频限制,可能会被禁 ip 之类的。。。这个也需要考虑
    ayang23
        47
    ayang23  
       2015-12-16 09:53:38 +08:00
    我是智齿地
    loveuqian
        48
    loveuqian  
       2015-12-16 09:57:11 +08:00
    @cxl008
    源码是哪来的啊。。。。
    hydyy
        49
    hydyy  
       2015-12-16 10:07:30 +08:00
    楼主你倒是放出来给大伙用用呀
    bullettrain1433
        50
    bullettrain1433  
       2015-12-16 10:10:51 +08:00
    @cxl008 求 script.js
    learnshare
        51
    learnshare  
       2015-12-16 10:10:58 +08:00
    我看了下机票,早点买的话比高铁贵不了太多
    Felldeadbird
        52
    Felldeadbird  
       2015-12-16 10:21:25 +08:00
    为楼主动手能力赞个!
    cxl008
        53
    cxl008  
       2015-12-16 10:21:28 +08:00
    @bullettrain1433 抓包啊
    donglingyongadls
        54
    donglingyongadls  
       2015-12-16 10:31:17 +08:00
    顶赞,可惜不会 OC ,要不然给自己的需求写软件真是挺好的
    fancymax
        55
    fancymax  
    OP
       2015-12-16 10:34:24 +08:00
    @donglingyongadls 我是做 C++/.net 的噢。软件全部用 swift 写的,现学的,比 OC 好上手太多了。
    fancymax
        56
    fancymax  
    OP
       2015-12-16 10:38:13 +08:00
    @cxl008 解密这个也挺费劲的吧,我是直接用 Fiddler 抓官网的数据包。高频限制的话,应该手机端和 Web 端是一样的吧,刷的快一点都很容易被封 IP 。
    Yannis1990
        57
    Yannis1990  
       2015-12-16 11:42:54 +08:00
    楼主在 Mac 上学 Swift 有什么参考资料推荐么?
    fancymax
        58
    fancymax  
    OP
       2015-12-16 11:46:07 +08:00   ❤️ 4
    @Yannis1990

    OS X Human Interface Guidelines
    在 iBook 上可以找到,介绍 OS X 的界面设计规范, OS X 上的软件比较注重界面设计。

    The swift Programming language
    同样在 iBook 上可以搜索到,主要就是介绍 swift 语言,可以先通篇浏览一遍,后续遇到问题再去查。同时配合 Dash 查 Cocoa 的 API , perfect 。

    Cocoa Programming for Mac OS X(5th)
    第五版以上,里面用的是 swift 讲解,介绍的例子通俗易懂,全书的例子做一遍下来,开发简单的 OS X 程序不成问题。
    limbo0
        59
    limbo0  
       2015-12-16 12:07:14 +08:00
    github?
    Yannis1990
        60
    Yannis1990  
       2015-12-16 12:24:46 +08:00
    @fancymax 已感谢
    mailworks
        61
    mailworks  
       2015-12-16 12:35:33 +08:00
    Mac 上 Chrome 安装插件刷票
    Akagi201
        62
    Akagi201  
       2015-12-16 12:45:18 +08:00
    @mailworks 哪个插件?
    fancymax
        63
    fancymax  
    OP
       2015-12-16 12:57:33 +08:00
    @mailworks 你用了?刷到票了吗?给个链接 我去试试。

    个人感觉这些脚本不够靠谱。
    xenme
        64
    xenme  
       2015-12-16 13:11:38 +08:00
    谁会冒险用这个?
    搞个 Windows , 360 浏览器走起,自动刷,自动识别验证码。
    挂着已经帮别人抢到两趟车的票了
    Gauin
        65
    Gauin  
       2015-12-16 13:28:08 +08:00
    360 浏览器走起,自动刷,自动识别验证码。 ???

    360 浏览器如何自动识别验证码啊?现在都需要自己点击确认验证码呢?你怎么办到的呢?求支招哈
    Gauin
        66
    Gauin  
       2015-12-16 13:28:28 +08:00
    @xenme
    360 浏览器走起,自动刷,自动识别验证码。 ???

    360 浏览器如何自动识别验证码啊?现在都需要自己点击确认验证码呢?你怎么办到的呢?求支招哈
    TangMonk
        67
    TangMonk  
       2015-12-16 13:32:04 +08:00
    没 github 链接?
    fancymax
        68
    fancymax  
    OP
       2015-12-16 13:47:24 +08:00
    @donglingyongadls 确实,就是因为自己要用才有持续动力去写
    fancymax
        69
    fancymax  
    OP
       2015-12-16 13:49:54 +08:00
    @xenme 源动力主要是自己要用~~
    Panway
        70
    Panway  
       2015-12-16 13:56:31 +08:00
    希望能加入内测。话说 Mac 上的 Chrome 抢票插件死活装不上,作者貌似下架了,开发者模式下也不行。。。
    xenme
        71
    xenme  
       2015-12-16 14:02:02 +08:00 via iPhone
    @Gauin 自动提交的时候会自动识别,两次识别错了会提示你手动输入。
    自动识别比较适合捡漏,挂机刷。
    FAB
        72
    FAB  
       2015-12-16 14:25:26 +08:00
    赞+1
    hqs123
        73
    hqs123  
       2015-12-16 14:33:05 +08:00
    好工具,收藏预防备用
    jayzjj000
        74
    jayzjj000  
       2015-12-16 14:33:51 +08:00
    叼叼的~
    SquirrelMAN
        75
    SquirrelMAN  
       2015-12-16 14:39:50 +08:00
    @cxl008 模拟器也能装 APP 吗?请问怎么装
    zjuster
        76
    zjuster  
       2015-12-16 15:04:39 +08:00
    我在找下载地址.....Error 了
    ilotuo
        77
    ilotuo  
       2015-12-16 15:10:18 +08:00
    应该是下周收藏第一+ 感谢第一了
    osx
        78
    osx  
       2015-12-16 15:13:09 +08:00   ❤️ 1
    @SquirrelMAN xcode 在后面放着呢,
    osx
        79
    osx  
       2015-12-16 15:13:46 +08:00
    @cxl008 铁总的 iOS 开发人员?
    fancymax
        80
    fancymax  
    OP
       2015-12-16 15:45:38 +08:00
    @pynix 不在电脑旁就用人工打码,在电脑旁就停声音自己输入验证码。

    除了验证码,要做好一个抢票软件也是不容易的,有很多地方要考虑。
    1etters
        81
    1etters  
       2015-12-16 15:54:28 +08:00
    姐姐你很棒!
    fancymax
        82
    fancymax  
    OP
       2015-12-16 16:24:39 +08:00
    @xenme 就是没有 windows ,现在虚拟机先跑着。

    那个 360 的自动识别正确率太低了,就是个噱头。

    如果不在电脑前,我都是直接用人工打码的。
    cq7216
        83
    cq7216  
       2015-12-16 16:49:25 +08:00
    苹果系统也有了?真不错
    leisurelylicht
        84
    leisurelylicht  
       2015-12-16 17:08:03 +08:00
    楼主加油
    ak47947
        85
    ak47947  
       2015-12-16 17:31:22 +08:00
    留个脚印,需要!
    liberize
        86
    liberize  
       2015-12-16 17:39:33 +08:00
    well done!
    cxl008
        87
    cxl008  
       2015-12-16 17:46:47 +08:00
    @osx 不是,只是帮他们做下安全相关的东西。。。。话说 有什么好的 类似验证码的东西么? 现在的验证码太反人类
    mailworks
        88
    mailworks  
       2015-12-16 18:12:40 +08:00
    @fancymax http://www.fishlee.net/soft/44/ 比官方的自动刷新功能强一些,还有个 360 抢票王的 chrome 插件不过貌似好像失效了
    我是北京到长沙,也很难买到票目前只买了回家的票,返程的票还没着落
    mailworks
        89
    mailworks  
       2015-12-16 18:16:47 +08:00
    mailworks
        90
    mailworks  
       2015-12-16 18:23:49 +08:00   ❤️ 1
    cmxz
        91
    cmxz  
       2015-12-16 19:12:52 +08:00
    为何不改下 360 的抢票扩展然后直接安装运行在 chrome 上?
    lovelynn
        92
    lovelynn  
       2015-12-16 19:15:01 +08:00
    下载地址有木有 急需啊 QAQ
    zky001
        93
    zky001  
       2015-12-16 21:06:14 +08:00
    开源吧,做的好与坏都不是事儿,大家见个组一起开发,年底前肯定可以搞出来
    yangcaimu
        94
    yangcaimu  
       2015-12-16 21:12:11 +08:00
    赞,硬需求
    ariza
        95
    ariza  
       2015-12-16 21:12:21 +08:00
    兹辞
    ityike
        96
    ityike  
       2015-12-16 21:26:55 +08:00
    不开源我都认为你是在耍流氓,在变相秀恩爱[doge]
    n0o0a0h0
        97
    n0o0a0h0  
       2015-12-16 21:34:16 +08:00
    加油!
    panxianhai
        98
    panxianhai  
       2015-12-16 21:44:14 +08:00 via iPhone
    @fancymax 第五版出来了?英文版哪里可以买到?
    fancymax
        99
    fancymax  
    OP
       2015-12-16 21:49:04 +08:00
    @panxianhai
    amazon
    中国区只有纸书,美国区有 kindle 版
    fancymax
        100
    fancymax  
    OP
       2015-12-16 21:49:50 +08:00
    @panxianhai 第五版用的 swift1.2 ,不过也 OK
    1  2  
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2778 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 34ms · UTC 11:50 · PVG 19:50 · LAX 03:50 · JFK 06:50
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.