繁体   English   中英

Python 和 xml.etree.ElementTree -

[英]Python and xml.etree.ElementTree -

我得到了一个具有以下结构的大 xml 文件:

<defaults>
   <options>
      <param name="email">email@email.org</param>
      <param name="email">email2@email.org</param>
      <param name="email">email3@email.org</param>
   </options>
</defaults>

我使用 xml.etree.ElementTree 作为 ET Lib 和以下代码:

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

使用上面的代码,我得到了参数“类”,我需要参数标签之间的内容(电子邮件)。

安迪的想法?

试图运行你的代码片段我得到

类型错误:“str”对象不可调用

因为.text是一个保存节点“文本内容”的属性。

for admin in root.iter("param"):
    print(admin.text)

产生预期:

email@email.org
email2@email.org
email3@email.org

我什至不知道“参数“类”是什么,您提供的任何地方都没有“类”。

看下面的代码

import xml.etree.ElementTree as ET

tree = ET.parse('data.xml')
root = tree.getroot()
emails = [ele.text for ele in list(list(root)[0])]
print(emails)

输出

['email@email.org', 'email2@email.org', 'email3@email.org']

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM