Python ElementTree编写多个名称空间

时间:2012-10-01 12:02:21

标签: python xml elementtree

我有一个XML文档,我正在阅读并附加到使用ElementTree。 这声明了多个名称空间。据我所知,ElementTree只允许声明一个全局命名空间: ET.register_namespace(prefix, uri)

我想在结果文件中写出多个名称空间。如果我尝试使用手动附加它们 root.set(prefix, uri) 然后他们的顺序错误,我得到cElementTree.ParseError: unbound prefix: line 2, column 0

编辑:事实证明我在设置的选项中输了一个错字。我纠正了这一点,它重新解析得很好。所以看起来这是一个可行的解决方案。

谢谢!

1 个答案:

答案 0 :(得分:1)

如果您不仅限于使用标准库,我建议您安装并使用提供ElementTree API的lxml包,其数量为advantages,包括轻松允许您在同一文档中包含多个namespaces