python在深度节点xml中查找标记
我想使用python ElementTree库访问“thirdDepth1”标记。以下是简化版。在我的真实xml中,它的深度是动态的。因此,无法使用find()、findall()和iterfind()通过给定路径访问它。有什么想法吗python在深度节点xml中查找标记,python,xml,elementtree,Python,Xml,Elementtree,我想使用python ElementTree库访问“thirdDepth1”标记。以下是简化版。在我的真实xml中,它的深度是动态的。因此,无法使用find()、findall()和iterfind()通过给定路径访问它。有什么想法吗 <root> <firstDepth1> <secondDepth1> <thirdDepth1>thirdDepthVal</thirdDepth1>
<root>
<firstDepth1>
<secondDepth1>
<thirdDepth1>thirdDepthVal</thirdDepth1>
</secondDepth1>
</firstDepth1>
<firstDepth2>
<secondDepth2></secondDepth2>
</firstDepth2>
</root>
第三次
从评论中可以看出,这可以通过使用xpath作为“//thirdedepth1”来实现。首先,鼓励提出好的问题来提供答案。第二,我建议使用lxml,它比ElementTree更具特色。第三,学习xpath basisc,您的可能是相对的
//thirdedepth1
。使用适当的xpath
,您可以访问它们。谢谢您解决了问题,xpath为“//thirdedepth1”
import xml.etree.ElementTree as ET
tree = ET.parse("testxmlreqpython.xml")
root = tree.getroot()
element = root.find(".//thirdDepth1")
print(element)