我在Python中使用ElementTree来解析xml文件并在其中添加或删除元素。
在我的XML文件中,root和根目录下面的元素有一个命名空间,但所有其他元素都没有。
我看到ElementTree在打印修改后的树时,会为每个元素添加名称空间。
是否有正确的方法告诉ElementTree 将名称空间保留在最初出现的元素中?
答案 0 :(得分:0)
试试这个:
import xml.etree.ElementTree as ET
namespaces = {
'': 'http://tempuri.org/',
'soap': 'http://schemas.xmlsoap.org/soap/envelope/',
'xsi': 'http://www.w3.org/2001/XMLSchema-instance',
'xsd': 'http://www.w3.org/2001/XMLSchema',
}
for prefix, uri in namespaces.items():
ET.register_namespace(prefix, uri)