-1

我正在尝试使用谷歌地图方向 api制作公共交通时间表应用程序。

从特定时间从一个地方到另一个地方的特定路线获取所有可能的 离开时间的最佳方法是什么?

问题是,服务器总是在一个特定的时间只响应一条路由。如何获得以下所有离开时间?

最糟糕的方法是每分钟询问服务器是否有一些新的旅行链接。但是,嘿,这将需要很多时间!

所以我认为谷歌可能会提供某种运输时间表,但我在谷歌开发者网站上找不到任何信息。我只看到了在此处此处的通用运输提要规范 (GTFS) 的帮助下提供谷歌时间表信息的方法。

但我找不到从他们那里得到它的方法。

4

2 回答 2

3

我不相信谷歌地图方向 api会返回你正在寻找的信息作为一个集合。

交通数据的问题在于,计算未来的时间表可能需要大量处理(尤其是如果骑手到达目的地涉及多条路线),因为基本上,系统需要在开始时为每个预定行程制定行程计划时间范围的点。

谷歌在他们的 API 中暗示了这个alternatives参数

alternatives— 如果设置为 true,则指定 Directions 服务可以在响应中提供多个路线备选方案。请注意,提供备选路线可能会增加服务器的响应时间。

此外,不同的未来出发时间实际上可能是不同的路线或路线组合(例如,多条路线可能会在同一条街道上汇合一段时间——例如,在大学校园或其他交通枢纽附近)

为了获得包含您正在寻找的实际停靠时间的基础路线数据,您需要直接下载运输机构的 GTFS 数据并自行处理(查看我们的GTFS 数据交换)。这是您的竞争对手已经在做的事情(例如 Transit App、Moovit 等)。有一些包会为你做一些这样的处理(例如One Bus Away)。然而,即使使用现有的库,这里也涉及一些繁重的工作(从开发的角度来看)。

最后一点,如果您想使用谷歌地图路线 API,您不需要在时间范围内的每一分钟查询它以获得一系列出发时间。您应该能够拨打一系列电话,其出发时间设置为刚刚超过您在上一次通话中返回的出发时间。例如,如果第一次行程时间是下午 1:00 设置departure_time为下午 1:05 并再次请求,那么如果第二次行程时间是下午 1:20,则将下一个行程时间设置为下午departure_time1:25 并再次请求,依此类推,以构建您的列表未来的旅行。

于 2015-09-23T18:41:22.620 回答
-1

好的。首先,您的问题不符合stackoverflow的要求。检查谷歌的开发者控制台,API 部分并检查他们是否提供任何此类 API 以在 24 小时内为您提供所有运输时间表?如果有任何这样的 API 就很好,你可以点击它,但如果没有,那么我担心你将无法获得它,除非你在一段时间后点击 API。

另一个建议是,您可以尝试 yahoo 或 bing 地图并检查他们是否有任何此类 API 可用于您的查询。

于 2015-09-18T13:44:09.720 回答