在Python中使用ETree保存XML。它没有保留名称空间,并添加了ns0,ns1和删除xmlns标签

在Python中使用ETree保存XML。它没有保留名称空间,并添加了ns0,ns1和删除xmlns标签,第1张

在Python中使用ETree保存XML。它没有保留名称空间,并添加了ns0,ns1和删除xmlns标签

您需要先注册前缀和名称空间,然后再进行 *** 作

fromstring()
(读取xml),以避免使用默认的名称空间前缀(例如
ns0
ns1
等)。

您可以使用此

ET.register_namespace()
功能,例如-

ET.register_namespace('<prefix>','http://Test.the.Sdk/2010/07')ET.register_namespace('a','http://schema.test.org/2004/07/Test.Soa.Vocab')

<prefix>
如果您不需要前缀,可以将其留空。


示例/演示-

>>> r = ET.fromstring('<a xmlns="blah">a</a>')>>> ET.tostring(r)b'<ns0:a xmlns:ns0="blah">a</ns0:a>'>>> ET.register_namespace('','blah')>>> r = ET.fromstring('<a xmlns="blah">a</a>')>>> ET.tostring(r)b'<a xmlns="blah">a</a>'


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5667464.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-16
下一篇 2022-12-16

发表评论

登录后才能评论

评论列表(0条)

保存