Dazu habe ich das Beispiel aus der Doku in mein Script eingefügt:
Code: Alles auswählen
import xml.parsers.expat
import string, sys
# 3 handler functions
def start_element(name, attrs):
print 'Start element:', name, attrs
def end_element(name):
print 'End element:', name
def char_data(data):
print 'Character data:', repr(data)
def main():
p= xml.parsers.expat.ParserCreate('ISO-8859-1')
p.StartElementHandler = start_element
p.EndElementHandler = end_element
p.CharacterDataHandler = char_data
p.ParseFile(open('test.xml', 'r'))
if __name__ == "__main__":
main()
Code: Alles auswählen
<?xml version="1.0"?>
<parent id="top"><child1 name="paul">Text goes here</child1>
<child2 name="fred">More text</child2>
</parent>
Start element: parent {'id': 'top'}
Start element: child1 {'name': 'paul'}
Character data: 'Text goes here'
End element: child1
...
Allerdings steht bei mir vor den Attributen immer ein 'u', also:
Start element: parent {u'id': u'top'}
Start element: child1 {u'name': u'paul'}
Character data: u'Text goes here'
...
Keine Ahnung wieso, weiss da jemand Rat?
Dirk