CSV到JSON python-创建的JSON文件出错

问题描述 投票:0回答:1

我对Python很陌生,并尝试将csv文件转换为JSON文件。(CSV文件是从HERE生成的)

因此,我以此成功创建了一个CSV文件。这是针对一个大学项目的,因此,我演示了可以从CSV创建JSON文件,并希望在写入MongoDB之前检查数据结构是否正确。

我使用下面的代码段执行此操作:

    data = {}
    csv_file = open('Covid_19_Raw_Data.csv', 'r')
    csvReader = csv.DictReader(csv_file)

    if os.path.exists("json_Raw_Data.json"):
        os.remove("json_Raw_Data.json")

    with open('json_Raw_Data.json', 'w', encoding='utf-8') as jsonFile: 
        for rows in csvReader: 
            json.dump(rows, jsonFile)
            jsonFile.write('\n')
    jsonFile.close()

我遇到的问题是,当我尝试验证json时,出现以下错误:

错误:解析第93行的错误:...,“ 4/10/20”:“ 0”} {“ UID”:“ 316”,“ i--------------------- ^期待'EOF','}',',',']',得到'{'

任何想法,我可以做些什么来解决这个问题?第93行是许多第一个条目的结尾。

python json eof
1个回答
0
投票

虽然写入的每一行都是有效的json,但整个内容不是。 JSON数据必须是有效JSON值的数组,或者是包含这些值的字典/对象。

最简单的解决方法是,以单个[开头文件并以]结束文件,那么您就有有效的JSON。

更新:正如user3600952正确指出的,行也应该用逗号分隔。

© www.soinside.com 2019 - 2024. All rights reserved.