如何从Google Maps距离矩阵返回正好距离

时间:2019-09-26 04:29:16

标签: python python-3.x google-maps-api-3

我想使用Google Maps距离矩阵API确定两个地址之间的距离。如何编辑代码,使我得到的输出只是距离而不是整个JSON词典?

我当前正在使用json,它返回目的地,起点,行(distance(text, value)duration(text, value))和状态。我可以将其简化为仅显示“行”,但想隔离distance(value)pick[i]drop[i]是来自csv文件的输入。

for i in range(1,10):
    source = pick[i]

    dest = drop[i]

    url ='https://maps.googleapis.com/maps/api/distancematrix/json?'

    r = requests.get(url + 'origins=' + source +
                       '&destinations=' + dest +
                       '&key=myapi') 

    x = r.json()

    print(i,x['rows'],"\n")

我当前的输出是:

[{'elements': [{'distance': {'text': '18.2 km', 'value': 18218}, 'duration': {'text': '21 mins', 'value': 1264}, 'status': 'OK'}]}]

1 个答案:

答案 0 :(得分:0)

当前仅提供此功能,该功能仅用于指定要由Google Maps Distance Matrix API返回的特定字段。您将需要解析Distance Matrix API JSON响应以获取或显示所需的值。您应该可以通过以下方式访问数据:x["elements"][0]["duration"]["value"]

此外,如果您有兴趣使用此功能,可以将其作为功能请求提交到Google的“公共问题跟踪器”中: https://developers.google.com/maps/support/#issue_tracker