понадобилось распарсить xml файл, при помощи Expat, в стандартной доке пример применения:
import xml.parsers.expat
# 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)
p = xml.parsers.expat.ParserCreate()
p.StartElementHandler = start_element
p.EndElementHandler = end_element
p.CharacterDataHandler = char_data
p.Parse("""<?xml version="1.0"?>
<parent id="top"><child1 name="paul">Text goes here</child1>
<child2 name="fred">More text</child2>
</parent>""", 1)
# create a subclass and override the handler methods
class MyParser(xml.parsers.expat.ParserCreate()):
def __init__(self):
path = ""
def StartElementHandler(self, tag, attrs):
print tag
# instantiate the parser and fed it some HTML
parser = MyParser()
parser.Parse(out)
Traceback (most recent call last):
File "D:\doorways\seo.py", line 13, in <module>
class MyParser(xml.parsers.expat.ParserCreate()):
TypeError: Error when calling the metaclass bases
cannot create 'pyexpat.xmlparser' instances
Для продолжения нажмите любую клавишу . . .