Comment extraire des données spécifiques de plusieurs objets JSON dans un seul fichier ?

DDD
Libérer: 2024-10-27 16:03:01
original
173 Les gens l'ont consulté

How to Extract Specific Data from Multiple JSON Objects in a Single File?

Accès à plusieurs objets JSON à partir d'un seul fichier

Travailler avec des fichiers JSON peut être difficile, en particulier lorsqu'il s'agit de plusieurs objets JSON stockés dans un fichier unique. Pour extraire des informations spécifiques de ces fichiers, des solutions personnalisées sont nécessaires.

Dans ce scénario, un fichier JSON contient plusieurs objets JSON, chacun représentant les informations d'un événement spécifique. La tâche consiste à extraire les champs « Horodatage » et « Utilité » de chaque objet et à les formater dans un bloc de données.

Pour y parvenir, il est recommandé d'exploiter la bibliothèque jsonstream. Il fournit une approche spécialisée pour gérer les gros fichiers JSON sans avoir besoin de charger l'intégralité du fichier en mémoire. La bibliothèque permet de décoder de manière itérative les objets JSON d'un fichier, un à la fois.

La bibliothèque JSONstream peut être utilisée comme suit :

<code class="python">from jsonstream import json

with open("input.json", "r") as f:
    for obj in json.parse(f):
        # Access and process individual fields from the parsed JSON object
        timestamp = obj["Timestamp"]
        usefulness = obj["Usefulness"]
        # ... (perform any necessary actions with the extracted data)</code>
Copier après la connexion

Alternativement, si l'accès direct au fichier n'est pas possible ou préféré, l'utilisation de la classe JSONDecoder avec la méthode raw_decode peut être une solution efficace. Cette méthode permet le décodage de grandes chaînes JSON sans avoir besoin de lire l'intégralité du fichier en une seule opération. Il trouve de manière itérative les objets JSON valides et garde une trace de la dernière position d'analyse.

<code class="python">from json import JSONDecoder

decoder = JSONDecoder()
with open("input.json", "r") as f:
    for line in f:
        try:
            obj, pos = decoder.raw_decode(line, 0)
            timestamp = obj["Timestamp"]
            usefulness = obj["Usefulness"]
            # ... (perform actions with the extracted data)
        except JSONDecodeError:
            # Handle any errors encountered during decoding</code>
Copier après la connexion

La bibliothèque JSONstream et la méthode raw_decode fournissent des moyens efficaces pour extraire plusieurs objets JSON d'un seul fichier, ce qui facilite le travail. avec et analyser de grands ensembles de données JSON.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!