2016-09-26 3 views
0

Schnipsel, diePyMongo: BSON zu JSON dict Umwandlung (Dumps Gibt ein JSON string)

from bson.json_util import dumps 

cursor = db.collections.find({"Test": "Sample"}) 

for msg in cursor: 
    json_msg = dumps(msg) 

jedoch Aufzeichnungen von MongoDB Verwendung pymongo Client holt, ist die json_msg vom Typ String. Gibt es eine Möglichkeit, ein JSON-Objekt zu erhalten, das in etwas wie einem Diktat durchlaufen werden kann? Ich möchte die abgerufenen JSON-Objekte während des Durchlaufs verarbeiten.

Ich versuchte json.loads(json_msg), aber das konvertiert die json_msg wieder in BSON-Format wieder.

Edit: Ich suche nicht nur zu drucken (was durch Drucken Zeichenfolge möglich ist); um das JSON-Objekt zu iterieren und zu verarbeiten.

Antwort

2

Der von collections.find zurückgegebene Wert ist bereits ein Python-Diktat, das Sie iterieren können. dumps wird es in eine Zeichenfolge konvertieren; also lass es nicht weg, benutz es einfach.

+0

Sie haben Recht, ich habe nicht den richtigen geschachtelten Schlüssel verwendet, um auf die Felder zuzugreifen. – KedarX