使用 Python 解析 XML 文档 - 搜索特定元素,获取其中的字符串

Parsing XML Document with Python - Search specific Elements, get String inside

我得到了一个 XML-Doc,其结构如下:

<defaults> 
<options>
<param name="userMail">user@mail.org</param>
<param name="adminMail"admin@mail.org</param>
<param name="language">en</param>
<param name="country">EN</param>
<> ... </> 
</defaults>
</options>

在“options”标签中我有很多参数元素,我想搜索“userMail”和“adminMail”元素。

    tree = ET.parse("file_config.xml")
    root = tree.getroot()
    for admin in root.iter("param"):
    print(admin.text)

效果很好,但我得到了全部输出 (user@mail.org, admin@mailorg, en, EN)。

如何只搜索“userMail”和“adminMail”元素并将它们分别存储在一个变量中?

我用xml.etree.ElementTree作为外星人。

见下文(对用户邮件执行相同操作)

import xml.etree.ElementTree as ET

xml = '''<defaults>
   <options>
      <param name="userMail">user@mail.org</param>
      <param name="adminMail">admin@mail.org</param>
      <param name="language">en</param>
      <param name="country">EN</param>
   </options>
</defaults>'''

root = ET.fromstring(xml)
admin_mail = root.find('.//param[@name="adminMail"]').text
print(admin_mail)

输出

admin@mail.org