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 :

Traitement XML avec python


Sujet :

Python

  1. #1
    Membre actif Avatar de diaboloche
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    592
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2004
    Messages : 592
    Points : 274
    Points
    274
    Par défaut Traitement XML avec python
    Bonjour,

    J'aimerais charger un fichier XML, mais en intégrant le contenu des entités directement dans le buffer... Est-ce possible ?
    Je procède ainsi pour le moment :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
                         dom = minidom.parse(path)
                         struct = dom.getElementsByTagName('struct')[0]
    Mais il ne me charge pas mes entités... (par ex : &Members.ent; )

    Quelqu'un peut m'éclairer ?

    Merci et bonne journée !

  2. #2
    Membre éprouvé Avatar de anthyme
    Homme Profil pro
    Inscrit en
    Mars 2004
    Messages
    1 559
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mars 2004
    Messages : 1 559
    Points : 1 257
    Points
    1 257
    Par défaut
    Oh une poule de feu

    un ptit conseil change de lib et passe a ElementTree.

    C'est bien plus puissant et pyxml n'est vraiment plus maintenu ...

    La dernière release de pyxml date de ... 2004

  3. #3
    Membre actif Avatar de diaboloche
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    592
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2004
    Messages : 592
    Points : 274
    Points
    274
    Par défaut
    Salut.

    Tu aurais un exemple pour charger les entités de cette façon ?

    Bonne soirée.

  4. #4
    Membre expérimenté Avatar de pacificator
    Profil pro
    Inscrit en
    Août 2006
    Messages
    1 074
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 1 074
    Points : 1 728
    Points
    1 728
    Par défaut
    un exemple basique:
    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
    from elementtree import ElementTree
     
    chaine = """
    <personnes>
        <personne prenom="jean" nom="dupond">
            <adresse type="domicile">
             <numero>1</numero>
             <rue>rue des peupliers</rue>
            </adresse>
            <numero type="gsm">0601020304</numero>
            <numero type="fixe">0102030405</numero>
        </personne>
        <personne nom="durand" prenom="jacques">
            <numero type="gsm">0605040302</numero>
            <numero type="fixe">0203040506</numero>
        </personne>
    </personnes>"""
     
     
    personnes = ElementTree.fromstring(chaine)
     
     
    for personne in personnes:
        print personne.get('nom'), personne.get('prenom')
        for numero in personne.findall('numero'):
            print numero.get('type'), numero.text
    On obtient:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    dupond jean
    gsm 0601020304
    fixe 0102030405
    durand jacques
    gsm 0605040302
    fixe 0203040506
    La doc est

  5. #5
    Membre actif Avatar de diaboloche
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    592
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2004
    Messages : 592
    Points : 274
    Points
    274
    Par défaut
    Merci.

    Dans l'exemple que tu me donnes, le XML ne comporte pas d'entités... Comment puis-je les charger dans le buffer si jamais j'avais eu une entité dedans ?

  6. #6
    Membre actif Avatar de diaboloche
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    592
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2004
    Messages : 592
    Points : 274
    Points
    274
    Par défaut
    J'ai trouvé ceci dans la doc python :

    ExternalEntityRefHandler

    Mais je ne sais pas comment l'appliquer.. Je galère un peu avec le python...

Discussions similaires

  1. Traitement basique sur fichier xml avec python
    Par raphael75015 dans le forum Général Python
    Réponses: 11
    Dernier message: 22/05/2014, 15h44
  2. pickler un fichier XML avec python
    Par Gldev_comp dans le forum Général Python
    Réponses: 1
    Dernier message: 10/07/2008, 05h31
  3. Traitement XML avec Firefox
    Par Capt. Flame dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 23/05/2008, 16h40
  4. Lire un fichier XML avec Python
    Par eyquem dans le forum Général Python
    Réponses: 2
    Dernier message: 19/12/2007, 13h54
  5. Gérer un fichier XML avec Python
    Par ffets dans le forum Général Python
    Réponses: 25
    Dernier message: 31/10/2007, 14h47

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