在Python中读取从MongoDB导出的CSV文件

时间:2019-07-05 19:03:44

标签: python mongodb pandas csv

我花了几个小时使用众所周知的pd.read_csv('..')

将CSV文件加载到Python中

但是,有一个问题:

Error message : Error tokenizing data. C error: Expected 3991 fields in line 14, saw 4572

但是,是的,我的代码没有错误。

CSV看起来像这样。

{"_id":{"$oid":"5cf683d88eb9ad12c84f6469"},"ID":"22991137","name":"M. Lundströ 

也许是由于MongoDB使用严格的BSON格式而发生问题,但老实说-我对此一无所知。

有人可以解决吗?

1 个答案:

答案 0 :(得分:1)

您只能在csv文件上使用pd.read_csv()。但是,该格式对我来说似乎是无效的JSON(括号未关闭)。

您需要以这种方式导出mongodb-

mongoexport --db dbname --collection col --type=csv --fields _id,field1,feild2 --out outfile.csv

编辑:

如果您只想读取JSON文件,则可以这样阅读-

import json

with open('filepath', 'rb') as f:
    data = json.load(f)
    print(data)