lxml怎么实现XML文档的命名空间前缀映射
在lxml中,可以使用register_namespace
方法来实现XML文档的命名空间前缀映射。以下是一个示例代码:
from lxml import etree# 创建XML文档root = etree.Element('root')doc = etree.ElementTree(root)# 注册命名空间前缀映射etree.register_namespace('ns', 'http://www.example.com/ns')# 添加带命名空间的元素child = etree.SubElement(root, '{http://www.example.com/ns}child')child.text = 'Child element'# 输出XML文档print(etree.tostring(doc, pretty_print=True).decode('utf-8'))
在上面的示例中,通过register_namespace
方法注册了命名空间前缀ns
和命名空间URIhttp://www.example.com/ns
的映射关系,然后使用etree.SubElement
方法添加带命名空间的子元素。最后使用etree.tostring
方法输出XML文档。