Bonjour,
J'essaie de mettre en place un parser xml en python.
J'y arrive avec un code de ce genre:
Maintenant quand j'essaie d'utiliser une classe de type xml.sax.xmlreader.IncrementalParser pour utiliser la méthode feed. Je n'y arrive plus. Je fournie à la méthode feed une string qui correspond à une ligne d'un fichier xml mais ça ne fonctionne pas.
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 from xml.sax.handler import ContentHandler import xml.sax import sys class compteurElements(ContentHandler): def __init__(self): self.elem={} def startElement(self,name,attr): if not self.elem.has_key(name): self.elem= 0 self.elem+= 1 def characters(self,ch): print ch def endElement (self, name): print name + ":" + str(self.elem) parser = xml.sax.make_parser() handler = compteurElements() parser.setContentHandler(handler) parser.parse(sys.argv[1])
Savez-vous comment réaliser le parse avec une méthode feed ?
D'avance merci.
louisonb
Partager