Maison >développement back-end >Tutoriel Python >Comment extraire les valeurs d'attribut de nœud de XML à l'aide d'ElementTree ?

Comment extraire les valeurs d'attribut de nœud de XML à l'aide d'ElementTree ?

Linda Hamilton
Linda Hamiltonoriginal
2024-12-17 19:17:10291parcourir

How to Extract Node Attribute Values from XML Using ElementTree?

Extraction des valeurs d'attribut de nœud à partir de XML à l'aide d'ElementTree

l'analyse des données XML est souvent nécessaire pour extraire des informations spécifiques. Cette question aborde la tâche d'obtention des valeurs d'un attribut particulier à partir de nœuds spécifiques dans un document XML.

Accès aux valeurs d'attribut avec ElementTree

L'approche recommandée pour cette tâche est pour utiliser la bibliothèque ElementTree, qui offre une API conviviale pour naviguer et manipuler les données XML. Pour utiliser ElementTree :

  1. Analysez le document XML pour créer une instance d'élément :

    import xml.etree.ElementTree as ET
    root = ET.parse('xml_file.xml').getroot()
  2. Utilisez la méthode findall() pour tout rechercher nœuds correspondants dans le document :

    matches = root.findall('desired_node_path')
  3. Récupérez la valeur de l'attribut à l'aide de get() méthode :

    attribute_value = match.get('attribute_name')

Exemple

Pour l'extrait XML fourni :

<foo>
   <bar>
      <type foobar="1"/>
      <type foobar="2"/>
   </bar>
</foo>

pour extraire les valeurs de l'attribut foobar pour toutes les instances du nœud de type, vous utiliserez ce qui suit code :

for type_node in root.findall('bar/type'):
    foobar_value = type_node.get('foobar')
    print(foobar_value)

Ce code imprimera les valeurs "1" et "2" sur la console.

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!

Déclaration:
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