Python,将mongodump的bson输出转换为json对象数组(字典)

Cen*_*tAu 4 python json mongodb bson pymongo

我已经使用mongodump命令转储了一个mongodb集合。输出是包含以下文件的转储目录:

dump/
    |___coll.bson
    |___coll.metadata.json
Run Code Online (Sandbox Code Playgroud)

如何将导出的文件打开到可在python中工作的字典数组?我尝试了以下方法,但均无效果:

with open('dump/coll.bson', 'rb') as f:
    coll_raw = f.read()
import json
coll = json.loads(coll_raw)

# Using pymongo
from bson.json_util import loads
coll = loads(coll_raw)

ValueError: No JSON object could be decoded
Run Code Online (Sandbox Code Playgroud)

Yas*_*tra 5

你应该试试:

from bson import BSON
with open('dump/coll.bson', 'rb') as f:
    coll_raw = f.read()

coll = bson.decode_all(coll_raw) 
Run Code Online (Sandbox Code Playgroud)