11
votes

Obtenir les noms d'attributs et les valeurs de Elementtree

J'ai un xml avec plusieurs attributs. J'utilise le package Elementtree .

Après avoir analysé un arbre d'un fichier XML, je reçois la racine du document, mais je veux obtenir l'attribut demandé, ou même toute la liste des attributs. xxx

Comment puis-je récupérer tous les noms et valeurs d'attribut pour un élément avec Elementtree?


0 commentaires

3 Réponses :


31
votes

chaque élément a un attribut .attrib c'est un dictionnaire; Utilisez simplement c'est Modèles de mappage pour le demander pour ses clés ou des valeurs: xxx

ou xxx

ou utilisez .values ​​() ou l'une des autres méthodes disponibles Sur un python dict .

Pour obtenir un attribut individuel, utilisez la norme Syntaxe d'abonnement : xxx


0 commentaires

9
votes

L'attribut attribut attribue d'un élément d'un éléganttree (comme la racine renvoyée par gretroot ) est un dictionnaire. Donc, vous pouvez faire, par exemple: xxx

qui va sortir, pour votre exemple xxx


0 commentaires

3
votes

Une belle boucle que vous pouvez utiliser pour chaque élément de la balise, du texte et de l'attribut XMLObject. Cela fonctionnera pour 2 niveaux XML, ce n'est pas le meilleur moyen de itération, mais il peut être utile pour des choses simples ...

for headTag in xmlObject.getchildren():
    print headTag.tag, headTag.text, headTag.attrib
    for bodyTag in headTag.getchildren():
        print "\t", bodyTag.tag, bodyTag.text, bodyTag.attrib


0 commentaires