使用E Tree检索特定属性的值

时间:2016-07-19 14:04:36

标签: python xml python-2.7

我有一个XML文档,通过它我想要使用e树检索特定属性的值。 以下是我的文档摘要:

-<orcid-message>
    <message-version>1.2</message-version>
  -<orcid-profile type="user">
    -<orcid-identifier>
        <uri>http://orcid.org/0000-0001-5105-9000</uri>
        <path>0000-0001-5105-9000</path>

我想检索只有'path'的值 到目前为止我已尝试过:

tree = ET.parse(file)
root = tree.getroot()
for element in root:
    for all_tags in element.findall('.//'):
         if all_tags.text:
             print all_tags.text, '|', all_tags.tail

我该怎么办才能获得'path'的价值

1 个答案:

答案 0 :(得分:0)

您可以将Element类'find方法与您要选择的元素的路径一起使用,例如:

import xml.etree.ElementTree as ET

tree = ET.parse("filename")
root = tree.getroot()
path = root.find("orcid-profile/orcid-identifier/path")
print(path.text)