如何在Python中的xml文件中获取特定的节点?
使用xml库,您可以从xml文件中获取所需的任何节点。但是对于提取给定的节点,您需要知道如何使用xpath来获取它。您可以在此处了解有关XPath的更多信息:https://www.w3schools.com/xml/xml_xpath.asp。
示例
例如,假设您有一个具有以下结构的xml文件,
<bookstore> <book category="cooking"> <title lang="en">Everyday Italian</title> <author>Giada De Laurentiis</author> <year>2005</year> <price>30.00</price> </book> <book category="children"> <title lang="en">Harry Potter</title> <author>J K. Rowling</author> <year>2005</year> <price>29.99</price> </book> </bookstore>
并且您想要提取具有lang属性en的所有标题节点,那么您将获得代码-
from xml.etree.ElementTree import ElementTree tree = ElementTree()root = tree.parse("my_file.xml") for node in root.findall("//title[@lang='en']"): for type in node.getchildren(): print(type.text)