Maison >développement back-end >Tutoriel Python >Comment extraire des données JSON imbriquées d'une chaîne dans une structure JSON plus grande ?
Accès aux données imbriquées dans un JSON complexe avec des chaînes JSON
Lorsque vous travaillez avec des données JSON complexes, vous pouvez rencontrer des scénarios dans lesquels l'une des valeurs est une autre chaîne JSON. Cela peut poser un défi dans l’extraction des données souhaitées. Dans ce cas, des données JSON vous sont présentées qui contiennent une clé d'annonce contenant des données JSON supplémentaires sous forme de chaîne.
Pour accéder au champ "contenu" dans ces données JSON imbriquées, l'approche correcte consiste à utiliser ce qui suit étapes :
import json # Load the raw JSON data raw_replay_data = json.loads('...') # Navigate to the announcement data announcement = raw_replay_data['data']['video_info'][0]['announcement'] # Parse the announcement string as JSON announcement_data = json.loads(announcement) # Extract the desired content content = announcement_data['content'] print(content) # Output: 'FOLLOW ME PLEASE'
Comprendre la structure des données
Pour saisir la structure des données sous-jacente, il est essentiel de visualiser les données JSON dans un format structuré. L'utilisation d'un outil tel que JSONLint ou le code suivant peut améliorer cette compréhension :
print(json.dumps(raw_replay_data, indent=4))
Naviguer dans l'échelle de clés
Pour accéder efficacement aux données imbriquées, vous devez tracez le chemin à travers les clés comme une échelle :
Chargement et analyse du JSON imbriqué
Une fois que vous avez extrait la chaîne d'annonce, vous devez la reconvertir dans la structure de données JSON de Python. Ceci est réalisé en chargeant la chaîne à l'aide de la fonction json.loads().
Respect de la structure des données
En suivant les étapes appropriées décrites ci-dessus, vous vous assurez que vous naviguer correctement dans la structure des données. Cela évite les erreurs résultant d'une indexation ou de conversions de type inappropriées.
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!