python从gmaps距离矩阵的JSON中提取值

2024-10-02 02:26:22 发布

您现在位置:Python中文网/ 问答频道 /正文

我使用Gmaps距离矩阵来获得从给定的起点和终点的距离值。在

ddist = gmaps.distance_matrix (Origin, Destination) 

得到这个结果:

^{pr2}$

我想从上面的JSON中提取['distance']['value']。在

这就是我现在所拥有的:

for who in ddistt.keys():
ddist = json.loads(ddistt)
print('For %s: "value":' %who, ddist['rows']['element']['distance']['value'])

然后返回这个错误:

Traceback (most recent call last):
  File "C:/src/distance.py", line 17, in <module>
    ddist = json.loads(ddistt)
  File "C:\Python35\lib\json\__init__.py", line 312, in loads
    s.__class__.__name__))
TypeError: the JSON object must be str, not 'dict'

如何修复?在


Tags: inpyjson距离valueline矩阵file
1条回答
网友
1楼 · 发布于 2024-10-02 02:26:22

返回的值似乎已经是一个字典,所以不需要调用json.loads。就这么做吧:

>>> ddistt = {'status': 'OK', 'origin_addresses': ['Depok, Depok City, West Java, Indonesia'], 'rows': [{'elements': [{'status': 'OK', 'duration': {'value': 4366, 'text': '1 hour 13 mins'}, 'distance': {'value': 46143, 'text': '46.1 km'}}]}], 'destination_addresses': ['North Jakarta, North Jakarta City, Special Capital Region of Jakarta, Indonesia']}
>>> ddistt["rows"][0]["elements"][0]["distance"]["value"]
46143

相关问题 更多 >

    热门问题