使用Python xml.sax打开命名空间模式

时间:2013-12-05 06:59:18

标签: python xml sax

Yikes,我似乎无法启用命名空间模式并调用我的contentHandler startElementNSendElementNS。相反,它仍在调用startElementendElement。以下是我如何设置它:

source = open(sourceFileName)
xml_parser = xml.sax.make_parser()
handler = MyContentHandler()
xml_parser.setContentHandler(handler)
xml_parser.setFeature(xml.sax.handler.feature_namespaces, True)
xml.sax.parse(source, handler)

如何启用名称空间模式以便调用startElementNS等?

1 个答案:

答案 0 :(得分:3)

最后一行(xml.sax.parse(source, handler))创建一个新的解析器。您没有使用已设置命名空间模式的xml_parser对象。

如果将此行更改为

,则应该有效
xml_parser.parse(source)