使用 xml.etree.ElementTree 作为 ET,使用 root.find() 方法在 Python 中查找 XML 文件中的特定标记 - 与文档描述的不同

问题描述 投票:0回答:1
python-3.x xml
1个回答
0
投票
如果您不了解 XML 命名空间,那么我可以理解您的沮丧。 XML 文档有点不寻常,因为重要的命名空间没有在根元素上声明。

之前已经问过很多类似的问题(例如

Empty list returned from ElementTree findall),我不会详细介绍命名空间。

所需的

issn

 元素绑定到 
http://jats.nlm.nih.gov
 命名空间(在 
article
 元素上声明)。你需要考虑到这一点。以下代码有效(它找到第一个 
issn
 元素):

issn_find = xml_data.find(".//{http://jats.nlm.nih.gov}issn")
也可以使用命名空间通配符:

issn_find = xml_data.find(".//{*}issn")
    
© www.soinside.com 2019 - 2024. All rights reserved.