IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Python Discussion :

Beautifulsoup recherche sur une branche respectant une certaine hiérarchie


Sujet :

Python

  1. #1
    Membre actif
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    241
    Détails du profil
    Informations personnelles :
    Âge : 51
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 241
    Points : 217
    Points
    217
    Par défaut Beautifulsoup recherche sur une branche respectant une certaine hiérarchie
    Bonjour,

    Je débute avec Beautifulsoup...

    Y-a-t'il un moyen simple (une seule commande ?) pour rechercher dans une hiérarchie en précisant à chaque branche des correspondances ?

    Exemple, comment trouver le role de l'item correspondant à la Branche id = 2 et sousbranche inst = 2 :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    <Branche id="1">
        <sousbranche inst="1">
            <item role="bidon">
            <item role="truc">
        </sousbranche>
        <sousbranche inst="3">
            <item role="test">
        <sousbranche>
    </Branche>
    <Branche id="2">
        <sousbranche inst="1">
            <item role="null">
        </sousbranche>
        <sousbranche  inst="2">
            <item role="zéro">
        </sousbranche>
        <sousbranche inst="4">
            <item role="rien">
        </sousbranche>
    </Branche>

  2. #2
    Membre actif
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    241
    Détails du profil
    Informations personnelles :
    Âge : 51
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 241
    Points : 217
    Points
    217
    Par défaut
    Oup's, désolé, je ne savais pas que l'on pouvait appeller la fonction "find" à la chaîne.

  3. #3
    Expert éminent
    Avatar de jurassic pork
    Homme Profil pro
    Bidouilleur
    Inscrit en
    Décembre 2008
    Messages
    4 007
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Bidouilleur
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2008
    Messages : 4 007
    Points : 9 401
    Points
    9 401
    Par défaut
    hello,
    il y a des erreurs dans le xml que tu nous montres. Sinon avec etree du paquet lxml on peut utiliser xpath pour récupérer des éléments du xml.
    Exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    from lxml import etree
    chaine = """
    <doc>
    <Branche id="1">
        <sousbranche inst="1">
            <item role="bidon" />
            <item role="truc" />
        </sousbranche>
        <sousbranche inst="3">
            <item role="test" />
        </sousbranche>
    </Branche>
    <Branche id="2">
        <sousbranche inst="1">
            <item role="null" />
        </sousbranche>
        <sousbranche  inst="2">
            <item role="zéro" />
        </sousbranche>
        <sousbranche inst="4">
            <item role="rien" />
        </sousbranche>
    </Branche>
    </doc>
    """
    root = etree.fromstring(chaine)
    r = root.xpath('//Branche[@id="2"]/sousbranche[@inst="2"]/item')
    for e in r:
        print(e.attrib['role'])
    Ami calmant, J.P
    Jurassic computer : Sinclair ZX81 - Zilog Z80A à 3,25 MHz - RAM 1 Ko - ROM 8 Ko

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

Discussions similaires

  1. [AJAX] Aide à la recherche sur une liste <select>
    Par lthibert dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 16/06/2007, 13h00
  2. Recherche sur une table
    Par deutschy dans le forum Langage SQL
    Réponses: 5
    Dernier message: 08/06/2007, 10h32
  3. selection d'une cellule sur une certaine ligne
    Par florent149 dans le forum Macros et VBA Excel
    Réponses: 33
    Dernier message: 20/07/2006, 17h37
  4. recherche sur une chaîne de caractères
    Par bogsy15 dans le forum Langage SQL
    Réponses: 4
    Dernier message: 17/07/2006, 12h01
  5. Recherche sur une page web
    Par Itori dans le forum Langage
    Réponses: 3
    Dernier message: 22/09/2005, 13h32

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