北京市预约挂号统一平台脚本 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
推荐学习书目
Learn Python the Hard Way
Python Sites
PyPI - Python Package Index
http://diveintopython.org/toc/index.html
Pocoo
值得关注的项目
PyPy
Celery
Jinja2
Read the Docs
gevent
pyenv
virtualenv
Stackless Python
Beautiful Soup
结巴中文分词
Green Unicorn
Sentry
Shovel
Pyflakes
pytest
Python 编程
pep8 Checker
Styles
PEP 8
Google Python Style Guide
Code Style from The Hitchhiker's Guide
ibreaker
V2EX    Python

北京市预约挂号统一平台脚本

  •  
  •   ibreaker 2017-04-12 16:45:46 +08:00 10119 次点击
    这是一个创建于 3112 天前的主题,其中的信息可能已经有所发展或是发生改变。

    北京市预约挂号统一平台脚本

    Copyright (C) 2017

    https://github.com/iBreaker/bjguahao

    目前还在调试中,没有稳定的版本,欢迎吐槽和试用

    • 本程序用于 北京市预约挂号统一平台 的挂号,只支持北京地区医院的挂号。
    • 挂号是刚需。帝都有些医院号源紧张,放号瞬间被秒杀一空,遂产生了撸一脚本挂号的念头。说干就干,简单的分析和调试后于 16 年 8 月份左右产出第一版,顺利挂上了 XXX 院运动医学科的号。很开心。
    • 17 年 2 月底的时候,朋友也需要挂一个号,脚本给他改了改,貌似删了重写的?没有仔细看。经过精心的分析和调试,挂了一个专家号。很开心。
    • 17 年 3 月 8 号,两位热心网友 github 上发起 issues ,提出反馈,让我很意外。本来想着这脚本自己写着用就可以了。接到反馈后觉得可以写成一个成熟的软件了。两位热心网友也主动提出改进代码的愿望。很开心。
    • 还看什么看,来贡献代码 ;-)

    2017-03-08 17:12:20 breaker

    环境

    • Python

    配置文件

    在脚本目录将 _config.josn 重命名为 config.json, 然后写入如下数据:

    [ { "username":"185xxxxxxx", "password":"*******", "date":"2017-02-17", # 挂号日期 "hospitalId":"142", # 142 北医三院 "departmentId":"200039602", # 运动医学科 "dutyCode":"1", # 1:上午 2:下午 "patientName":"张三", # 就诊人姓名,可不填,适配多就诊人情况 "DebugLevel":"info" # debug / info / error } ] 

    文档

    文档 中有比较详细的接口分析和装包。

    ChangeLog release 版本更新内容

    调试

    开发者请将config.json配置文件中的DebugLevel参数设置为debug

    协议

    bjguahao 基于 GPL-3.0 协议进行分发和使用,更多信息参见协议文件。

    第 1 条附言    2019-04-15 23:04:46 +08:00
    v1.0.4 发布
    43 条回复    2020-03-10 15:30:23 +08:00
    ibreaker
        1
    ibreaker  
    OP
       2017-04-12 17:34:37 +08:00   1
    说句话鼓励一下啊
    qianlicao353
        2
    qianlicao353  
       2017-04-12 17:36:58 +08:00
    板凳
    MajorAdam
        3
    MajorAdam  
       2017-04-12 17:37:15 +08:00 via iPhone
    地板
    defunct9
        4
    defunct9  
       2017-04-12 17:43:26 +08:00
    god ,怎么查医院 id 和科室 id ,如果要手动查。岂不是跟手动没啥区别了。只是方便频繁挂同一个医院同一个科室的,得了慢性长期病的人?
    ibreaker
        5
    ibreaker  
    OP
       2017-04-12 17:45:59 +08:00
    @defunct9 什么鬼 查的功能还没做,因为自己没有那个需求。希望有人可以完善这个功能啊
    acthtml
        6
    acthtml  
       2017-04-12 17:55:36 +08:00
    这种脚本开源不好吧,你自己用吧。

    你把本来公平的预约行为变成了不公平的。
    psfang
        7
    psfang  
       2017-04-12 18:05:52 +08:00
    现在都用京医通了,有注明放号时间,刷一刷,还是挺容易刷到的。
    ibreaker
        8
    ibreaker  
    OP
       2017-04-12 18:10:11 +08:00
    @psfang 有些科室 不好挂,大部分都还挺好
    EyreFree
        9
    EyreFree  
       2017-04-12 18:11:19 +08:00
    楼主好人,一生平安,赞一个!
    21grams
        10
    21grams  
       2017-04-12 18:36:23 +08:00 via Android
    我觉得这事不太道德
    580a388da131
        11
    580a388da131  
       2017-04-12 18:37:33 +08:00
    瞬间想起阿里月饼。。。
    duan602728596
        12
    duan602728596  
       2017-04-12 19:17:26 +08:00 via iPhone
    抢一下挺好的
    orange88
        13
    orange88  
       2017-04-13 08:03:03 +08:00 via Android
    支持
    ibreaker
        14
    ibreaker  
    OP
       2017-04-13 09:19:47 +08:00
    @21grams 不道德?
    Limius
        15
    Limius  
       2017-04-13 10:29:12 +08:00
    兹慈一下~
    zhengxiaowai
        16
    zhengxiaowai  
       2017-04-13 10:38:10 +08:00
    你自己用就好了,放出来干嘛。。被人恶意刷票怎么办?这事不道德。。还是删了或者转成私有的吧
    虽然我也写了一个
    ibreaker
        17
    ibreaker  
    OP
       2017-04-13 10:54:43 +08:00   1
    @zhengxiaowai 大神好啊 好道德啊
    nazhenhuiyi294 /td>
        18
    nazhenhuiyi294  
       2017-04-13 12:10:01 +08:00
    别被玩坏了
    cxl008
        19
    cxl008  
       2017-04-13 16:28:53 +08:00
    走其他方式,不要走 web 了, web 上涉及短信验证码,其他渠道 ,例如 114 平台 或是 微信。。。不涉及短信验证码哦
    run2
        20
    run2  
       2017-04-13 17:40:16 +08:00
    "patientName":"张三", # 就诊人姓名,可不填,适配多就诊人情况
    呃, bj 还是这么干的?还没实名?
    bestrenxs
        21
    bestrenxs  
       2017-04-13 19:30:34 +08:00
    流弊!之前给媳妇挂号老费劲了。。
    iot
        22
    iot  
       2017-04-14 07:52:02 +08:00
    以后不会写程序的还能活吗? 就像农民工买火车票一样
    l33ch
        23
    l33ch  
       2017-04-14 09:19:49 +08:00 via iPhone
    那个多配置文件支持就是号贩子的需求吧?
    ibreaker
        24
    ibreaker  
    OP
       2017-04-14 09:28:05 +08:00
    @nazhenhuiyi294 嘿嘿 不会的
    ibreaker
        25
    ibreaker  
    OP
       2017-04-14 09:28:35 +08:00
    @cxl008 是吗?我没试过 谢谢 v 友提醒
    ibreaker
        26
    ibreaker  
    OP
       2017-04-14 09:29:30 +08:00
    @sobigfish 实名了 这只是一个配置文件的例子哦~
    ibreaker
        27
    ibreaker  
    OP
       2017-04-14 09:30:00 +08:00
    @bestrenxs 试试脚本
    ibreaker
        28
    ibreaker  
    OP
       2017-04-14 09:30:29 +08:00
    @iot 是啊~ 啥都得抢
    ibreaker
        29
    ibreaker  
    OP
       2017-04-14 09:30:46 +08:00
    @l33ch 不知道啊~
    netChen
        30
    netChen  
       2017-04-14 10:27:46 +08:00
    这个劝楼主不要开源,自己用用就好,更不要随意分享。你要想到有很多和自己父母年纪一样的外地人,带着希望千里迢迢的到帝都寻求最后的帮助,他们不舍得吃不舍得喝的挤在医院的大厅,带着让人看了都想落泪的自己最在乎的“病了的亲属”,他们不会软件,也不会脚本。而楼主的这个脚本却让不定数的人在病痛的折磨中等待着“迟到的希望”。如果这个被号贩子拿到了,不知道还有多少人要遭殃。技术是无害的(就像实验室培育艾滋病毒),但是刻意泄露就要考虑一下影响了。我们做技术的就好像会做刀一样,取决于你是要做菜刀,还是大砍刀。以上只是个人愚见,楼主或可采纳,或可置之不理
    netChen
        31
    netChen  
       2017-04-14 10:29:43 +08:00
    世界有太多的不公平,能给最需要帮助的坚持着希望的人一些小小的公平,这也就够了
    ibreaker
        32
    ibreaker  
    OP
       2017-04-14 12:36:50 +08:00
    @netChen 没想到有人会回复这么多字,只是做个小软件方便挂号。让大家用用罢了,想不到会有用 python 的号贩子。
    leega0
        33
    leega0  
       2017-04-14 13:00:28 +08:00
    这么多玻璃心,贩子想搞自有贩子的专用软件,也不至于都来用楼主的代码。。。。
    ibreaker
        34
    ibreaker  
    OP
       2017-04-14 13:36:11 +08:00
    @leega0 是啊 真是说什么的都有
    ibreaker
        35
    ibreaker  
    OP
       2017-04-14 13:36:47 +08:00
    @ibreaker 不知道他们过年回家是不是坚持不用抢票软件
    aitaii
        36
    aitaii  
       2017-04-14 15:48:37 +08:00
    #32 @ibreaker 号贩子不会用 python ,就怕有用心之人卖给号贩子啊。
    ibreaker
        37
    ibreaker  
    OP
       2017-04-14 16:40:48 +08:00
    @aitaii 号贩子用的软件比我的先进多了。
    qwerzjy
        38
    qwerzjy  
       2017-04-17 20:16:59 +08:00
    号贩子都是技术大牛
    Eleutherios
        39
    Eleutherios  
       2017-06-21 10:38:25 +08:00
    号贩子的话,电脑直连 SIM 卡收短信,并自动挂号是必须的
    再有就是网络要好,参考美帝早年的股市高频交易(到交易所延迟低的玩家通吃全场)
    再进一步就是建平台、建数据库、提供自动下单功能,最终开启规模化的盈利道路了

    嗯,其实说穿了也没太多技术含量……
    cxl008
        40
    cxl008  
       2017-06-30 11:45:59 +08:00
    @ibreaker 作者在不? 这两天用脚本试,在最后 gei_it post 最后的数据的时候 不成功,返回不对,但是我抓包比对了一下,除了 ua 一点小差别 应该不影响,再就是 cookie 有点不一样,能否详细交流一下?
    gaoyadianta
        41
    gaoyadianta  
       2018-09-30 17:48:50 +08:00
    挖了个楼,请问 lz,现在项目还在维护吗,我试了一下:
    python3 bjguahao.py -c config.yaml
    Sun, 30 Sep 2018 17:47:41 bjguahao.py[line:75] INFO 配置加载完成
    Sun, 30 Sep 2018 17:47:42 bjguahao.py[line:343] INFO 今日可挂号到: 2018-12-23
    Sun, 30 Sep 2018 17:47:42 bjguahao.py[line:353] INFO 放号时间: 2018-07-16 08:30
    Sun, 30 Sep 2018 17:47:42 bjguahao.py[line:132] INFO 开始检查是否已经登录
    Sun, 30 Sep 2018 17:47:42 bjguahao.py[line:168] INFO cookies 登录成功
    Sun, 30 Sep 2018 17:47:42 bjguahao.py[line:249] INFO 当前号余量:
    +----------+----------------------------------------+--------+
    | 医生姓名 | 擅长 | 号余量 |
    +----------+----------------------------------------+--------+
    | 隐藏 | 产科高危妊娠(须在本院建档后才可预约) | 0 |
    | 普通号 | 产科高危妊娠(须在本院建档后才可预约) | 0 |
    +----------+----------------------------------------+--------+
    Sun, 30 Sep 2018 17:47:42 bjguahao.py[line:402] ERROR 没号了, 亲~
    然后程序就停止了,是这样的吗?
    多谢~
    ibreaker
        42
    ibreaker  
    OP
       2019-01-03 12:53:30 +08:00
    @gaoyadianta Sun, 30 Sep 2018 17:47:42 bjguahao.py[line:402] ERROR 没号了, 亲~ ,
    还在维护
    erjiong
        43
    erjiong  
       2020-03-10 15:30:23 +08:00
    您好,孩子 2 个月后有挂号的需求,不巧的是看到本项目时您已经删除了项目。自己蹲了一下 114yygh,每天都是秒无…不知您是否可以帮帮忙?有偿也是没问题的,万分感谢。
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     3914 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 27ms UTC 05:16 PVG 13:16 LAX 22:16 JFK 01:16
    Do have faith in what you're doing.
    /html> ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86