Skip to main content
 首页 » 编程设计

python :xml.etree.ElementTree,删除 "namespaces"

2025年05月04日15lvdongjie

我喜欢 ElementTree 解析 xml 的方式,尤其是 Xpath 功能。我有来自带有嵌套标签的应用程序的 xml 输出。

我想在不指定命名空间的情况下按名称访问此标签,这可能吗? 例如:

root.findall("/molpro/job") 

代替:

root.findall("{http://www.molpro.net/schema/molpro2006}molpro/{http://www.molpro.net/schema/molpro2006}job") 

请您参考如下方法:

至少对于 lxml2,可以稍微减少这种开销:

root.findall("/n:molpro/n:job", 
             namespaces=dict(n="http://www.molpro.net/schema/molpro2006"))