Python 加载多个JSON文件

Python 加载多个JSON文件,python,json,Python,Json,因此,我尝试用Python HTTP请求加载多个JSON文件,但我不知道如何正确地执行 用python加载一个JSON文件非常简单: response = requests.get(url) te = response.content.decode() da = json.loads(te[te.find("{"):te.rfind("}")+1] 但是如何加载多个JSON文件呢 我有一个URL列表,我试图用一个循环请求每个URL,然后加载结果的每一行,但这似乎不起作用 这是我正在使用的代码:

因此,我尝试用Python HTTP请求加载多个JSON文件,但我不知道如何正确地执行

用python加载一个JSON文件非常简单:

response = requests.get(url)
te = response.content.decode()
da = json.loads(te[te.find("{"):te.rfind("}")+1]
但是如何加载多个JSON文件呢

我有一个URL列表,我试图用一个循环请求每个URL,然后加载结果的每一行,但这似乎不起作用

这是我正在使用的代码:

t = []
for url in urls:  
    re = requests.get(url)
    te = req.content.decode()
    daten = json.loads(te[te.find("{"):te.rfind("}")+1])
    t.append(daten)

但我得到了这个错误: JSONDecodeError:应为值:第1行第1列字符0

我对JSOn非常陌生,但我明白我不能用循环逐行阅读它,因为它破坏了JSOn结构

那么如何读取多个JSON文件呢

编辑:找到错误


某些链接的JSON格式不正确。

对于请求库,如果您请求的端点返回格式良好的JSON响应,则只需调用响应对象上的.JSON方法:

t=[] 对于url中的url: re=requests.geturl t、 appender.json
然后,如果您想处理错误的响应,请尝试将上面的代码包装起来:…除了block

假设您从任何站点收到正确的json,您没有构造结果json。 你可能会写这样的东西

t = []
for url in urls:  
    t.append(requests.get(url).content.decode('utf-8'))
result = json.loads('{{"data": [{}]}}'.format(','.join(t)))

很可能您的一些URL没有返回格式良好的JSON,或者您的操作会[…]破坏它。如果看不到响应data.req.content.decode=>req.text;,则不能这么说;。可能对于一个url,这不是有效的JSON,请在加载之前打印它;可能是@Leviathan的副本,我是另一个问题的执行官,但我现在有一个JSON问题,而不是UTF-8问题。请提供