Wie das Parsen von json mit ijson und python
Habe ich JSON-Daten als eine Reihe von Wörterbüchern, die als Anfrage-payload.
[
{ "Field1": 1, "Feld2": "5" },
{ "Field1": 3, "Feld2": "6" }
]
Versuchte ich ijson.items(f, '')
ergibt die gesamte JSON-Objekt als ein einzelnes Element. Gibt es eine Möglichkeit, ich kann die Iteration der Elemente innerhalb des Arrays nacheinander mit ijson?
Hier ist der Beispiel-code, den ich versuchte, die ist, woraus sich die JSON-als ein einziges Objekt.
f = open("metadatam1.json")
objs = ijson.items(f, '')
for o in objs:
print str(o) + "\n"
[{'Feld2': u'5', 'Field1': 1}, {'Feld2': u'6', 'Field1': 3}]
Bitte fügen Sie Ihrem code, die zeigen, wie es "Erträge gesamte json als ein einzelnes Element"
InformationsquelleAutor srs | 2013-11-15
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ich bin nicht sehr vertraut mit
ijson
, aber Lesen Sie einige der Ihren code sieht es wie ein Aufrufitems
mit einem Präfix von"item"
arbeiten sollte, um die Elemente des Arrays, sondern als die top-level-Objekt:Dies nur spuckt die folgende Fehlermeldung:
TypeError: can't concat bytes to str
Es gibt keinen Weg, ich kann erraten, wo diese Ausnahme kommt, nur mit der Ausnahme von text. Ich schlage vor, Sie eine Frage stellen des eigenen, einschließlich Ihrer code und einen vollständigen traceback.
Sorry, ignorieren Sie diesen Kommentar. Ich begann einfach googeln, die zusammen mit ijson und fand, was ich suchte, ziemlich schnell
Diese über die fuhr mich verrückt, diese Antworten "iterieren über ein JSON-array in ijson" - das ist nicht ganz einfach auf einen Blick haha (vs. immer ein großer Punkt der Liste ergab)
InformationsquelleAutor Blckknght