嗨,我有下面的代码,这是工作得很好
import requests
import json
f= open
r=requests.get('https://greatbritishpublictoiletmap.rca.ac.uk/loos/54c234f02ec4abe957b84f37?format=json')
data = r.json()
with open('data.json', 'w') as f:
json.dump(data, f)
但我想让厕所id成为url的一部分,上面是54c234f02ec4abe957b84f37?,动态。它必须从json列表中读取,我可以通过以下代码加载列表-
import json
with open('loos.json') as json_data:
d = json.load(json_data)
但是我不知道如何从loos数据集中读取id,将每个json结果附加到json转储中,因为它会遍历loos数据集
我觉得我很快就要完成这项任务了,但我只需要一两个提示
非常感谢。你知道吗
附加更新
`import json
import requests
with open('Tloos.json') as json_data:
data = json.load(json_data)
for i, loo in enumerate(data['features']):
loo_id = loo['_id']
r=requests.get('https://greatbritishpublictoiletmap.rca.ac.uk/loos/{}?format=json'.format(loo_id))
data = r.json()
with open('data%d.json' %i, 'w') as f:
json.dump(data, f)`
所以,这是我的尝试,但它只保存输出的json文件中的最后一个loo id,我猜它会覆盖其他文件(我的测试)Tloos.json文件文件总共有3个LOO)或者没有正确迭代?如何调试这个?你知道吗
使用string
format
函数可以很容易地完成指定的操作。你知道吗这会告诉你怎么做的要点。我不知道你的名字loos.json文件结构是肯定的,因此您必须在需要获得
loo_id
时对其进行调整。其余的保持不变。你知道吗如果您想迭代许多loo\u id,则必须使用循环执行以下操作:
其中
loo_ids
是包含您的id的某个iterable。你知道吗相关问题 更多 >
编程相关推荐