如何强制Python在XML根标签中写入未使用的命名空间?
强制在ElementTree生成的XML根标签中添加未使用的命名空间
直接通过Element对象的set()方法,给根元素显式添加完整的命名空间声明属性即可,ElementTree不会过滤未被使用的这类属性。
具体代码示例
import xml.etree.ElementTree as ET # 创建根元素 root = ET.Element("root") # 强制添加未使用的命名空间属性 root.set("xmlns:SPECIAL_NAMESPACE", "NAMESPACE_URL") # 正常添加其他元素(示例) child = ET.SubElement(root, "child") child.text = "测试内容" # 写入XML文件 tree = ET.ElementTree(root) tree.write("output.xml", encoding="utf-8", xml_declaration=True)
生成的XML效果
<?xml version='1.0' encoding='utf-8'?> <root xmlns:SPECIAL_NAMESPACE="NAMESPACE_URL"> <child>测试内容</child> </root>
这种方法不需要额外处理命名空间注册,直接通过设置属性的方式就能让目标命名空间声明出现在根标签中,完全符合第三方的格式要求。
内容的提问来源于stack exchange,提问作者principal-ideal-domain
相关产品推荐
相关产品推荐

