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 :

[XML] Modification de la valeur d'un attribut


Sujet :

Python

  1. #1
    Membre averti
    Inscrit en
    Août 2006
    Messages
    39
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 39
    Par défaut [XML] Modification de la valeur d'un attribut
    Salut a tous, alors mon problème est le suivant:

    je dispose de plusieurs documents xml, dont j'aimerai modifier la valeur de certains attributs, voici un exemple:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    <RIBCL version="2.21">
     <LOGIN USER_LOGIN="adminname" PASSWORD="password">
      <SERVER_INFO MODE="READ" >
       <GET_HOST_DATA />
      </SERVER_INFO>
     </LOGIN>
    </RIBCL>
    comment puis-je faire en utilisant les api de python pour modifier les valeurs "adminname" et "password" de USER_LOGIN et PASSWORD ?

    Merci d'avance.

  2. #2
    Membre émérite
    Profil pro
    Responsable Dev
    Inscrit en
    Décembre 2003
    Messages
    788
    Détails du profil
    Informations personnelles :
    Localisation : France, Vendée (Pays de la Loire)

    Informations professionnelles :
    Activité : Responsable Dev

    Informations forums :
    Inscription : Décembre 2003
    Messages : 788
    Par défaut
    si je comprend bien tu as un ensemble de fichier qui ont tous la forme:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    <RIBCL version="2.21">
     <LOGIN USER_LOGIN="adminname" PASSWORD="password">
      <SERVER_INFO MODE="READ" >
       <GET_HOST_DATA />
      </SERVER_INFO>
     </LOGIN>
    </RIBCL>
    et tu souhaites obtenir par exemple
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    <RIBCL version="2.21">
     <LOGIN USER_LOGIN="fred" PASSWORD="superfred">
      <SERVER_INFO MODE="READ" >
       <GET_HOST_DATA />
      </SERVER_INFO>
     </LOGIN>
    </RIBCL>
    en python tu pourrais faire un truc du genre
    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
     
    from xml.dom.minidom import *
     
     
    def modify_node(node):
        for n in node.childNodes:
            if n.nodeType == Node.ELEMENT_NODE:
    	    if "USER_LOGIN" in n.attributes.keys():
                    n.setAttribute("USER_LOGIN", "fred")
                    n.setAttribute("PASSWORD", "superfred")
            modify_node(n) 
     
    try:
        xmldoc = parse('/home/fraoustin/Desktop/essai.xml')
        node_racine=xmldoc.documentElement
        modify_node(node_racine)
        filexsl = open('/home/fraoustin/Desktop/essai.xml',"w")
        filexsl.write(xmldoc.toxml())
        filexsl.close()
    except Exception, e:
        raise e

  3. #3
    Membre averti
    Inscrit en
    Août 2006
    Messages
    39
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 39
    Par défaut
    Fantastique, fraoustin ton code fonctione a merveille! , maintenant je dois juste trouver un moyen de passer en paramètre les valeurs des attributs ainsi que le nom du fichier a traiter a une fonction.

    Merci bien. et a+

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

Discussions similaires

  1. Modification de la valeur d'un attribut
    Par Popa_Cubede dans le forum Langage
    Réponses: 2
    Dernier message: 04/07/2014, 11h27
  2. Réponses: 3
    Dernier message: 23/12/2011, 12h15
  3. modifier la valeur d'un attribut xml
    Par totoche dans le forum ASP
    Réponses: 2
    Dernier message: 13/12/2005, 15h01
  4. [VB.NET] [XML] Modification d'une valeur
    Par kirk80 dans le forum Windows Forms
    Réponses: 9
    Dernier message: 09/09/2004, 16h15

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