Trein

🚆 荷兰铁路实时查询终端

荷兰铁路 NS 官方 API 的命令行工具,支持实时查询列车时刻、规划行程、获取中断信息及站点搜索,适合开发者与通勤用户快速获取结构化交通数据。

收藏
5.4k
安装
2.1k
版本
1.0.0
CLS 安全扫描中
预计需要 3 分钟...

使用说明

核心用法

trein 是一款面向荷兰铁路(Nederlandse Spoorwegen, NS)的 CLI 工具,通过官方 API 提供以下功能:

1. 实时发车查询trein departures <station> 显示指定站点的列车时刻,支持模糊匹配(如 "adam" 自动解析为 "Amsterdam Centraal")
2. 行程规划trein trip <起点> <终点> 计算最优换乘路线

3. 服务中断trein disruptions 获取全网或特定线路的运营异常

4. 站点搜索trein stations <关键词> 快速定位车站

5. 别名系统:通过 trein alias 设置常用站点缩写,提升重复查询效率

所有命令支持 --json 标志输出结构化数据,便于脚本集成和数据处理。

显著优点

  • 官方数据源:直接对接 NS API Portal,信息权威、更新及时
  • 跨平台支持:提供 npm 全局安装及 macOS(ARM/Intel)、Linux 独立二进制下载
  • 模糊匹配:智能解析用户输入,降低记忆完整站名的负担
  • 配置灵活:支持环境变量 NS_API_KEY 或 JSON 配置文件,便于 CI/CD 场景
  • 轻量高效:纯 CLI 交互,适合终端重度用户和自动化工作流

潜在缺点与局限性

  • 地理限制:仅覆盖荷兰境内铁路网络,不支持国际列车(如 Eurostar、Thalys 跨境段)或欧洲其他铁路系统
  • API 依赖:需自行注册 NS API 密钥,存在申请门槛;API 配额或稳定性可能影响使用
  • 功能边界:无票价查询、座位预订、实时拥挤度等增值功能
  • 维护状态:由个人开发者维护,长期更新保障存疑

适合人群

  • 荷兰本地通勤者与开发者
  • 需要集成公共交通数据的自动化脚本编写者
  • 偏好终端交互、追求查询效率的技术用户
  • 对荷兰铁路时刻表有高频查询需求的旅客

常规风险

  • API 密钥泄露:若将 NS_API_KEY 硬编码于脚本或提交至版本控制,可能导致密钥滥用
  • 数据时效性:虽然为官方 API,但极端天气或突发事件下的延迟更新仍可能影响出行决策
  • 第三方信任:npm 包及二进制文件由非官方渠道分发,建议校验下载来源完整性
  • 隐私暴露:频繁查询会留下 API 调用记录,敏感行程模式可能被 NS 侧分析

Trein 内容

手动下载zip · 2.3 kB
skill-card.mdtext/markdown
请选择文件