API - 基于到达时间的旅行时间

时间:2017-03-09 23:18:45

标签: google-maps google-maps-api-3 google-direction google-distancematrix-api

我想找到两个地址之间的旅行时间(包括流量)。

输入 - 来源,目的地, 到达时间 ,交通方式,交通模式(悲观,乐观,最佳猜测)

输出 - 旅行时间

看起来Google Distance Matrix API是我应该使用的API,除了我无法为驾驶添加到达时间输入。我被提示添加出发时间。当运输方式为运输时,我可以输入到货时间。

这是距离矩阵API的限制吗?是否有付费版本或其他解决方法?

3 个答案:

答案 0 :(得分:0)

从今天(2019年1月6日)开始,不支持开车到达时间。这是API的Directions方法的帮助文件的相关部分:

 :param arrival_time: Specifies the desired time of arrival for transit
    directions. Note: you can't specify both departure_time and
    arrival_time.
:type arrival_time: int or datetime.datetime

关键是到达时间仅用于公交路线,而不用于行车路线。当我使用mode ='driving'和arrival_time时,我得到并以结尾的错误:

raise googlemaps.exceptions.HTTPError(response.status_code)
googlemaps.exceptions.HTTPError: HTTP Error: 400

当我将其更改为离开时间时,函数调用就可以正常工作。

对问题的明确答案:

  

这是距离矩阵API的限制吗?

是的

  

为此需要付费版本还是其他解决方案?

不。您唯一的选择是调用带有猜测出发时间的API,找到旅行时间,然后进行迭代直到到达时间收敛为止。

答案 1 :(得分:-2)

而不是使用谷歌方向矩阵尝试使用谷歌地图方向API,它将为您提供最佳的时间距离和流量更新结果,请参阅GOOGLE MAP DIRECTIONS API文档。

答案 2 :(得分:-2)

您需要使用Google地图距离矩阵API,它将输入作为源纬度,经度和目的地纬度,经度。它将返回json文件,其中包含源地址,目标地址,以km为单位的距离以及没有流量的时间。下面是链接跟随它

https://developers.google.com/maps/documentation/distance-matrix/intro

此API也有限制,每天只允许2500次点击