V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
• 请不要在回答技术问题时复制粘贴 AI 生成的内容
shenxgan
V2EX  ›  程序员

[12306 车次停靠点地图] 哪位 v 友有兴趣可以实现一下,上 github 后必 star 🙂

  •  
  •   shenxgan · 2020-01-11 16:49:52 +08:00 · 7312 次点击
    这是一个创建于 1803 天前的主题,其中的信息可能已经有所发展或是发生改变。
    https://kyfw.12306.cn/otn/resources/js/framework/station_name.js
    https://kyfw.12306.cn/otn/resources/js/query/train_list.js


    查询列车编号( train_no )的接口:
    接口: https://search.12306.cn/search/v1/train/search?date={date}&keyword={keyword}&_={ts}
    示例: https://search.12306.cn/search/v1/train/search?keyword=z&date=20200112&_=1578730776774
    建议:keywords = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890'
    注:这个接口反应不是很灵光,建议对于每个关键字循环重试直至成功;成功后 sleep 5 分钟


    查询列车停靠站:
    mobile 接口: http://mobile.12306.cn/weixin/czxx/queryByTrainNo?train_no=24000000Z10E&from_station_telecode=BBB&to_station_telecode=BBB&depart_date=2019-12-31
    pc 接口: https://kyfw.12306.cn/otn/czxx/queryByTrainNo?train_no=24000000Z10E&from_station_telecode=BBB&to_station_telecode=BBB&depart_date=2019-12-31

    from_station_telecode 和 to_station_telecode 可以使用万能的 BBB ;如果不想用可以使用从 station_name.js 中获取到的值


    高德地图:
    经纬度:使用高德或百度,都有提供个人开发接口
    轨迹: https://lbs.amap.com/api/amap-ui/demos/amap-ui-pathsimplifier/simple-demo


    期望:
    提供 web 站点进行查询

    可能的步骤:
    1. 本地保存未来 1 个月的车次信息
    2. 本地保存所有站点的经纬度信息,如果本地没有,则现查
    3. 查询列车停靠站,显示表格+地图(轨迹)
    4. [可能的后续] 地图可以加上站点名称和站点之间的距离和总距离等
    第 1 条附言  ·  2020-01-11 17:41:51 +08:00
    说出来你们可能不信,之前我实现过一次;不然上述的资料我怎么辣么清楚~ [:doge]
    放上来是因为我真的不想写了;就一个目的,希望有人实现,然后我可以偶尔上去查查;如果怀疑我有其它目的,可以选择闭源
    第 2 条附言  ·  2020-01-11 18:26:27 +08:00
    根据 v 友 @ik 的回复,发现 [掌上高铁] app 也能够满足需求,可查看车次,可查看地图;再次感谢。
    42 条回复    2020-01-13 10:08:57 +08:00
    Keyes
        1
    Keyes  
       2020-01-11 17:10:39 +08:00 via iPhone   ❤️ 43
    以前还有报价
    现在只有 star
    hinate
        2
    hinate  
       2020-01-11 17:10:41 +08:00 via iPhone
    高铁停靠站和时间在调整前都是固定的,其实我想要一个每个站车次停靠的站台,方便换乘查询以及在购票时参考购买车次🙈🙈
    shenxgan
        3
    shenxgan  
    OP
       2020-01-11 17:12:50 +08:00
    @Keyes 哈哈,真不是商业目的;只是我懒了~不想动
    icop
        4
    icop  
       2020-01-11 17:13:19 +08:00
    空手套白狼。
    loading
        5
    loading  
       2020-01-11 17:18:41 +08:00
    star 其实是很廉价的,特别是只有一个的时候,除非你答应买 1w star 过去。
    Ricky123
        6
    Ricky123  
       2020-01-11 17:22:40 +08:00 via iPhone
    启发了免费找人做项目的新思路
    lonelygo
        7
    lonelygo  
       2020-01-11 17:23:12 +08:00
    @icop 人家这明明是 star 套代码好不好
    jason94
        8
    jason94  
       2020-01-11 17:28:11 +08:00 via Android
    这个不难实现,自己动手呗。另外地图渲染这块可以用 bmap
    icop
        9
    icop  
       2020-01-11 17:38:05 +08:00
    @lonelygo 可以弄,但是没有必要。
    november
        10
    november  
       2020-01-11 17:48:55 +08:00 via iPhone
    我想知道查询这个有什么用?看了一遍,没想到有什么对应的需求。
    laoba
        11
    laoba  
       2020-01-11 17:50:27 +08:00
    看了一遍,没有看懂毕竟我也不会
    shenxgan
        12
    shenxgan  
    OP
       2020-01-11 17:57:26 +08:00
    @november @laoba 查询车次在 12306 app 上是可以查询的,也很简单;这个做出来就可以在地图上看到大致的列车轨迹;就像看个图
    ik
        13
    ik  
       2020-01-11 17:58:18 +08:00 via iPhone   ❤️ 1
    列车线路不同时间可能对应的 train_on 会有变化,相应的运行时间和途径站点也会有变化。
    感谢提供所有车次查询,和 BBB 的办法🤣
    ik
        14
    ik  
       2020-01-11 17:59:36 +08:00 via iPhone
    另外轨迹图 在 掌上高铁 可以看没抓包研究过, 只是偶尔用用的话应该直接下载使用就可以了
    shenxgan
        15
    shenxgan  
    OP
       2020-01-11 18:00:30 +08:00
    @shenxgan 就想看个图。做好了可以了解:①列车轨迹 ②站点之间的距离 ③当前位置 在车上查询的话,就可以知道当前大概位置,当前下一站是哪等
    shenxgan
        16
    shenxgan  
    OP
       2020-01-11 18:02:11 +08:00
    @ik 轨迹图验证过,是可以直接用的。train_on 的接口需要输入时间,确实是有的列车,不同日期,它的行车安排是不同的;当然常见的应该是不变的
    ik
        17
    ik  
       2020-01-11 18:09:17 +08:00 via iPhone   ❤️ 1
    @shenxgan 既然这样,看起来掌上高铁应该是完全满足你的需求的,不明白为啥还要造一个,并且数据来源可能还是需要依赖掌上高铁的数据
    shenxgan
        18
    shenxgan  
    OP
       2020-01-11 18:13:12 +08:00
    @ik 嗯,我理解错你意思了。你说的掌上高铁不是 12306 官方的 app 吧?那个我不熟悉。上面我说的轨迹图验证过是高德的地图 api
    shenxgan
        19
    shenxgan  
    OP
       2020-01-11 18:24:21 +08:00
    @ik #17 嗯,不错,我刚下载了掌上高铁。基本满足了我的需求,感谢。
    JerryCha
        20
    JerryCha  
       2020-01-11 18:38:47 +08:00
    thanks
    比较适合拿来做可视化练习
    wellsc
        21
    wellsc  
       2020-01-11 18:42:25 +08:00
    可以直接加高德的产品经理提需求 :doge https://twitter.com/AmapRealTimeBus
    wellsc
        22
    wellsc  
       2020-01-11 18:43:50 +08:00
    shenxgan
        23
    shenxgan  
    OP
       2020-01-11 18:45:49 +08:00
    @wellsc 我还真提过,是在高德 app 的反馈里;因为我看高德 app 也提供了好多工具(比如地铁图),我觉得完全可以搞一个,可惜没有回应
    huyinjie
        24
    huyinjie  
       2020-01-11 18:50:19 +08:00 via iPhone
    一个 App 搞定:路路通
    nVoxel
        25
    nVoxel  
       2020-01-11 18:50:35 +08:00 via Android   ❤️ 1
    搜 高铁通
    xbonline
        26
    xbonline  
       2020-01-11 19:31:18 +08:00   ❤️ 2
    几个月前发过一次

    /t/600394
    november
        27
    november  
       2020-01-11 19:38:19 +08:00 via iPhone
    @shenxgan 重点就是无法理解轨迹图有什么用。汽车的轨迹图还可以让人了解下距离。但是高铁每站的到站时间,基本是约定好了。看时间就知道大概是什么情况了啊。
    SenLief
        28
    SenLief  
       2020-01-11 20:53:47 +08:00
    这个我觉得完全没意义,因为火车基本上很少变动。
    Rorysky
        29
    Rorysky  
       2020-01-11 21:30:16 +08:00
    @Keyes 楼主的 star 可是很值钱的
    Ggmusic
        30
    Ggmusic  
       2020-01-11 22:13:48 +08:00 via iPhone
    对我个人而言,知道哪趟车在哪个站点打开哪侧车门更实用,方便下车时站对队
    dremy
        31
    dremy  
       2020-01-11 22:33:18 +08:00 via iPhone
    想知道该如何画出两个站点之间的列车行进路径,这不是与列车线路强相关的嘛…
    shenxgan
        32
    shenxgan  
    OP
       2020-01-11 22:34:32 +08:00
    @november #27 怎么说呢,就是这样一种感觉:偶尔抬头看向车窗外,咦,这景色不错 /这看起来不错 /还可以这样... 这时候就想了解一下当前我的位置在地图的哪里
    shenxgan
        33
    shenxgan  
    OP
       2020-01-11 22:36:22 +08:00
    @dremy #31 根据两个站点,得到各自的经纬度,然后简单连线;这是一个大概的路线
    jinliming2
        34
    jinliming2  
       2020-01-11 23:46:53 +08:00 via iPhone
    @shenxgan emmmm,直接打开地图 APP,GPS 定位不就知道了吗?
    whusnoopy
        35
    whusnoopy  
       2020-01-12 08:47:13 +08:00
    http://cnrail.geogv.org/zhcn/about?useMapboxGl=true

    善用搜索,此站维护人目前应该在 MSFT 西雅图,国内 GIS 专业的铁路爱好者
    humor66
        36
    humor66  
       2020-01-12 11:11:52 +08:00
    楼主可能确实无意的,但是触发了巨大商机,以后外包报 star 数
    xbonline
        37
    xbonline  
       2020-01-12 12:07:52 +08:00
    大概很多人不知道有那么一小撮人是「火车迷(铁路爱好者)」,我也是(伪)
    rna2008
        38
    rna2008  
       2020-01-12 12:25:37 +08:00
    记得有人做过一个“高铁通”
    realpg
        39
    realpg  
       2020-01-12 13:21:10 +08:00
    不用爬 12306 我有全套数据 人工维护的
    realpg
        40
    realpg  
       2020-01-12 13:23:37 +08:00   ❤️ 1
    @Ggmusic #30
    动车高铁相对固定,变更接车股道需要下调度命令

    普速车就别想了,晚点因素,站台占用因素都是比较随机的。
    小站正线靠站台 正点 能预估 90%以上大致开门方向
    稍微大一点的站 尤其是正线没站台的 完全混乱 当班人员偏好都影响
    realpg
        41
    realpg  
       2020-01-12 13:32:25 +08:00
    @xbonline #37
    抓住一只圈里人……
    看了下发帖历史记录 小程序那边要是有啥需要公司才能办的 或者资质啥的 可以帮忙~
    xbonline
        42
    xbonline  
       2020-01-13 10:08:57 +08:00
    @realpg 非常感谢。已加你电报
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3189 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 28ms · UTC 12:47 · PVG 20:47 · LAX 04:47 · JFK 07:47
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.