首页/指南/开发者
开发者

GTFS、GTFS-RT 与 GBFS:有何不同?

比较 GTFS、GTFS-RT 和 GBFS,以选择您的移动数据:计划时刻、实时信息、站点及共享车辆。

By ROOTE·阅读时间约7分钟
GTFS、GTFS-RT 与 GBFS:有何不同?
每一次出行,都始于身边。

要点速览

GTFS Schedule 描述了计划的交通服务。GTFS Realtime,通常称为 GTFS-RT,传递有关服务的实时更新信息。GBFS 描述共享出行服务,特别是根据发布的流展示其站点和可用车辆。根据您的应用需求选择相应的数据格式。

GTFS Schedule 描述了计划的交通服务。GTFS Realtime,通常称为 GTFS-RT,传递有关服务的实时更新信息。GBFS 描述共享出行服务,特别是根据发布的流展示其站点和可用车辆。根据您的应用需求选择相应的数据格式。

这些格式用于组织数据;但并不保证其在所有地方的可用性,亦不保证每个数据流的质量。

用 GTFS 表示计划的服务

一个 GTFS Schedule 数据集包含表格文件,描述了运营商、站点、路线、运行以及车次等内容。日历文件指出适用的日期。文件之间通过标识符关联。 GTFS Schedule 参考资料.

它可用于回答“这个站点在哪里?”或“该服务有哪些预计经过时间?”等问题。使用时需解析日历和文件间的关联。

仅读取站点列表不足以重建车次通行;反之,站点位置有时可单独使用,无需时刻表。

用 GTFS-RT 实时更新服务信息

GTFS Realtime 可以提供车次更新、车辆位置和警报。车次更新涉及通行时间和服务变更。数据流使用 Protocol Buffers(一种结构化序列化格式)。 GTFS Realtime 入门.

发布者可仅发布部分类别,并非全部。存在车辆位置流不保证所有站点都有估计信息。

在界面中,应区分计划通行和实时估计。我们的指南 理论时刻与实时数据 从用户视角解释了这种差别。

GBFS 用于共享出行

GBFS 通过 JSON 流描述共享出行服务。根据系统和版本,可能包含站点、状态、车辆及其他服务特性。文档区分了站点信息与可用状态。 GBFS 文档.

在应用中应区分相对稳定的位置与快速变化的状态。处理时保留格式版本和相关时间戳。

可用性流非预约或解锁 API,仅辅助发现服务,租赁操作由相关服务提供。

根据使用场景进行比较

需求 需考虑的格式
描述计划中的站点与线路 GTFS Schedule
解析预定通行和服务日期 GTFS Schedule
更新通行信息或接收服务动态 GTFS-RT,取决于发布的数据流
定位共享出行站点或车辆 GBFS,取决于发布的数据

设计示例:地图展示有轨电车站点和共享单车站。用结构数据表示位置,用实时状态展示单车可用性。两层数据缓存和更新需求不同。

预估各数据源限制

检查版本、可选字段、覆盖范围及使用权限。标识符仅在其上下文中有效:不同发布者可能用相同字符串代表不同实体。

还需预设缺失或过期的数据。不可用数据流返回空列表不应被误解为空服务。避免未知信息默认为零。

直接使用数据流或借助 API

直接集成需您负责收集、验证和解释数据源。API 可提供统一接口,但仍需了解其覆盖范围、警告和条款。

关于 ROOTE 初步用例,请参阅 如何使用 API 搜索附近站点. 从接口需求出发,核实实际可用字段。

为开发者提供ROOTE 出行API

关注某点的出行信息。
直接集成进您的应用。

  • 搜索
    指定位置周边
  • 获取
    出行数据
  • 集成到
    您的应用

告别单纯地图,使用ROOTE API搜索附近的出行和服务数据。

阅读片段并选择架构

在GTFS时刻表中,stop_times.txt的一个片段将一次运行、一站和一次预定经过连接起来。以下的简化示例具有教学意义:它并非完整GTFS数据集,且其标识符需与trips.txt、stops.txt及日历关联使用。

对于GTFS实时,请查找有用的实体:TripUpdate可更新一次经过,VehiclePosition描述车辆位置,Alert则传递服务信息。车辆位置并非自动代表预计到达时间。传输格式为Protocol Buffers;用于诊断的JSON表示不是标准二进制流。

在GBFS中,station_information描述站点信息,而station_status描述其发布状态。某些计数器名称及可用文件会随着版本变化。下列JSON片段展示了GBFS 2.3及其num_bikes_available和num_docks_available字段;在复用示例前请核实版本。

地点地图可从结构化数据开始。下一班次显示则需要相应的更新及明确规划的回退机制。可用单车界面必须管理计数器、租赁条件及时间有效性。这三类界面并不自动共享统一缓存策略。

# Extrait pédagogique de stop_times.txt
trip_id,arrival_time,departure_time,stop_id,stop_sequence
trip_demo,08:10:00,08:10:00,stop_demo,1

# Extrait pédagogique de station_status en GBFS 2.3
{
  "station_id": "station_demo",
  "num_bikes_available": 3,
  "num_docks_available": 7,
  "is_installed": true,
  "is_renting": true,
  "is_returning": true,
  "last_reported": 1720000000
}

格式化单车可用性及其新鲜度

为您的产品选择API或MCP

常见问题

GTFS 是否自动包含实时数据?

否。GTFS Schedule 表示计划服务,实时信息由其他流如 GTFS-RT 提供。

GBFS 可用来解锁单车吗?

它描述服务及公开数据,租赁过程由运营商提供的功能完成。

标准格式是否保证完整覆盖?

否。格式定义结构,覆盖范围和发布信息依数据源而定。

何不环顾四周?

用ROOTE探索您的社区,发现可用的出行信息,轻松规划出行。

探索ROOTE地图 ↗