1. #1
    bm
    bm est déconnecté
    Membre averti

    Homme Profil pro
    Développeur informatique
    Inscrit en
    octobre 2002
    Messages
    715
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Drôme (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : octobre 2002
    Messages : 715
    Points : 408
    Points
    408
    Billets dans le blog
    6

    Par défaut Noeud avec élément identique

    Bonjour,

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    <?xml version="1.0" encoding="utf-8"?>
        <database name="domo>
            <!-- Table mois_12 -->
            <table name="mois_12">
                <column name="id">1</column>
                <column name="hr">01_Dec_00_00</column>
                <column name="pulse">2.0</column>
            </table>
            <table name="mois_12">
                <column name="id">2</column>
                <column name="hr">01_Dec_00_30</column>
                <column name="pulse">1.5</column>
            </table>
        </database>
    Je n'arrive pas à lire dans le noeud column que le nom "pulse"
    J'ai essayé ceci avec python:

    Code python : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    from lxml import etree
    tree = etree.parse("mois_12.xml")
    print(tree)
     
    for column in tree.xpath("/database/table/column"):
        print(column.text)     
    print('----------------------------')    
     
    for column in tree.xpath("/database/table/column[column name='pulse']"):
        print(column.text)

    lxml.etree.XPathEvalError: Invalid predicate

    @+
    Il vaut mieux proposer des solutions alternatives que de chercher le consensus général
    Le [-1] est la faucheuse du champs de maïs qui se rend insupportable :
    [-52] Novembre 2016
    [-60] Mai 2017
    Modération : Pourquoi le profil perso ne compile pas les [-1] dans un ramasse-miette pour faire sortir du jus de banane
    Le jus de banane des statistiques de [Résolution] n'est pas admis dans les forums

  2. #2
    bm
    bm est déconnecté
    Membre averti

    Homme Profil pro
    Développeur informatique
    Inscrit en
    octobre 2002
    Messages
    715
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Drôme (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : octobre 2002
    Messages : 715
    Points : 408
    Points
    408
    Billets dans le blog
    6

    Par défaut

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    for table in tree.xpath("/database/table"):
        print(table[2].text)
    Avec le deuxième élément de table, c'est correct.
    Pas sur que ce soit la meilleure sélection ..
    Il vaut mieux proposer des solutions alternatives que de chercher le consensus général
    Le [-1] est la faucheuse du champs de maïs qui se rend insupportable :
    [-52] Novembre 2016
    [-60] Mai 2017
    Modération : Pourquoi le profil perso ne compile pas les [-1] dans un ramasse-miette pour faire sortir du jus de banane
    Le jus de banane des statistiques de [Résolution] n'est pas admis dans les forums

  3. #3
    Modérateur

    Profil pro
    Inscrit en
    septembre 2004
    Messages
    11 312
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : septembre 2004
    Messages : 11 312
    Points : 19 172
    Points
    19 172

    Par défaut

    Hello,

    ton XPath est faux. Pour sélectionner basé sur un attribut, c'est :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    /database/table/column[@name='pulse']
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 3
    Dernier message: 05/10/2007, 14h19
  2. [XSLT] Copier un noeud avec ces éléments sauf un
    Par DelphLaga dans le forum XSL/XSLT/XPATH
    Réponses: 2
    Dernier message: 12/10/2006, 14h55
  3. Réponses: 4
    Dernier message: 20/06/2005, 15h57
  4. [DOM] Accès au contenu textuel d'un noeud avec DOM
    Par comexe2 dans le forum XML
    Réponses: 2
    Dernier message: 16/07/2004, 16h41
  5. créer un noeuds avec des paramétres
    Par Toxine77 dans le forum XMLRAD
    Réponses: 5
    Dernier message: 21/01/2003, 17h11

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo