在python中读取json文件

时间:2018-07-30 09:33:51

标签: python json

我正在尝试读取具有以下格式内容的文件:

{"op":"mcm","clk":"6394474220","pt":1523095339090,"mc":[{"id":"1.141299528","rc":[{"atb":[[10,5.56]],"id":30246}],"con":true,"img":false}]}
{"op":"mcm","clk":"6394627886","pt":1523096762118,"mc":[{"id":"1.141299528","rc":[{"atb":[[10.5,20.78]],"id":30246}],"con":true,"img":false}]}
{"op":"mcm","clk":"6394647672","pt":1523096790720,"mc":[{"id":"1.141299528","rc":[{"atb":[[10,22.23]],"id":30246}],"con":true,"img":false}]}

我正在尝试将其读取为json,但似乎这些文件中有多个json。 当我尝试使用以下方式读取此json文件时:

connection_file = open(filepath, 'r')
conn_string = json.load(connection_file)

出现错误:

  

json.decoder.JSONDecodeError:额外数据:第2行第1列

请让我知道如何读取此类文件。

2 个答案:

答案 0 :(得分:1)

您的文件不是有效的json文件。每行都是json,但它们之间用换行符分隔。您可以使用它来将它们全部作为列表:

with open(filepath) as f:
    jsons = list(map(json.loads, f))
# jsons is now a list of all jsons in your file.

答案 1 :(得分:1)

看起来文件不是一个正确的json文件,但每一行中都包含json数据。因此,逐行读取文件并将其转换为json

implementation "com.github.bumptech.glide:okhttp3-integration:$glideV"