XML par minidom ou elementTree
Bonjour,
Je voudrais utiliser XML (pour la première fois..) pour créer une liste,
Après avoir lu la doc minidom, j'ai fait un programme de récupération comme ceci :
Code:
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 xml.dom.minidom import parse,parseString
dom = parseString(
'''<?xml version="1.0" encoding="UTF-8"?>
<ElementDocument>
<CONTACT>
<NOM>MARTIN</NOM>
<PRENOM>Paul</PRENOM>
</CONTACT>
<CONTACT>
<NOM>DUPONT</NOM>
<PRENOM>Jean</PRENOM>
</CONTACT>
</ElementDocument>
''' )
param=["NOM","PRENOM"]
l=[]
for i in dom.getElementsByTagName('CONTACT'):
d={}
for cle in param:
d[cle]=i.getElementsByTagName(cle)[0].childNodes[0].data
l.append(d)
print l
# Impression de [{'NOM': u'MARTIN', 'PRENOM': u'Paul'}, {'NOM': u'DUPONT', 'PRENOM': u'Jean'}] |
J'utilise des getElementsByTagName pour être sûr de ce que je récupère.
Est ce correct ?
Alex