Heim > Backend-Entwicklung > Python-Tutorial > So extrahieren Sie mehrere JSON-Objekte aus einer einzelnen Datei: Eine Pythonic-Lösung

So extrahieren Sie mehrere JSON-Objekte aus einer einzelnen Datei: Eine Pythonic-Lösung

Linda Hamilton
Freigeben: 2024-10-29 18:20:02
Original
821 Leute haben es durchsucht

How to Extract Multiple JSON Objects from a Single File: A Pythonic Solution

Mehrere JSON-Objekte aus einer einzelnen Datei extrahieren

Wenn Sie auf eine JSON-Datei stoßen, die zahlreiche JSON-Objekte enthält, ist ein umfassender Ansatz unerlässlich Extrahieren spezifischer Daten. Dieser Artikel befasst sich mit einer Lösung zum Extrahieren von „Timestamp“- und „Nützlichkeits“-Werten aus einer solchen Datei.

Die bereitgestellte JSON-Dateistruktur weist gestapelte JSON-Objekte auf. Um die gewünschten Daten zu analysieren und abzurufen, sollten Sie die Funktion json.JSONDecoder.raw_decode verwenden. Diese Funktion ermöglicht die Dekodierung beliebig großer JSON-Strings unter Einhaltung von Speicherbeschränkungen.

Es ist jedoch wichtig zu beachten, dass das Python-JSON-Modul keine Strings mit vorangestelltem Leerzeichen akzeptiert. Daher wird ein regulärer Ausdruck verwendet, um nach dem ersten Nicht-Leerzeichen zu suchen, das als Ausgangspunkt für die Analyse dient.

Unten finden Sie eine überarbeitete Lösung, die dieses Problem behebt:

<code class="python">from json import JSONDecoder, JSONDecodeError
import re

NOT_WHITESPACE = re.compile(r'\S')

def decode_stacked(document, pos=0, decoder=JSONDecoder()):
    while True:
        match = NOT_WHITESPACE.search(document, pos)
        if not match:
            return
        pos = match.start()
        
        try:
            obj, pos = decoder.raw_decode(document, pos)
        except JSONDecodeError:
            # do something sensible if there's some error
            raise
        yield obj</code>
Nach dem Login kopieren

Das überarbeitete Code-Snippet analysiert effektiv die gestapelten JSON-Objekte innerhalb des angegebenen Dokuments und gibt jedes Objekt zurück, sobald es darauf trifft. Dieser Ansatz vermeidet die Einschränkungen der herkömmlichen JSON-Analyse und eignet sich daher für die Verarbeitung großer und möglicherweise komplexer JSON-Dateien.

Das obige ist der detaillierte Inhalt vonSo extrahieren Sie mehrere JSON-Objekte aus einer einzelnen Datei: Eine Pythonic-Lösung. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage