如何解析 XML 并获取特定节点属性的实例?

2024-02-04

我在 XML 中有很多行,并且正在尝试获取特定节点属性的实例。

<foo>
   <bar>
      <type foobar="1"/>
      <type foobar="2"/>
   </bar>
</foo>

如何访问属性的值foobar?在这个例子中,我想要"1" and "2".


我建议ElementTree http://docs.python.org/library/xml.etree.elementtree.html。同一 API 还有其他兼容的实现,例如lxml https://lxml.de/parsing.html, and cElementTree在 Python 标准库本身中;但是,在这种情况下,他们主要添加的是更快的速度——编程的难易程度取决于 API,这ElementTree定义。

首先构建一个Element实例root来自 XML,例如与XML http://docs.python.org/library/xml.etree.elementtree.html#xml.etree.ElementTree.XML函数,或者通过解析文件,例如:

import xml.etree.ElementTree as ET
root = ET.parse('thefile.xml').getroot()

或者显示在以下位置的许多其他方式中的任何一种ElementTree http://docs.python.org/library/xml.etree.elementtree.html。然后做类似的事情:

for type_tag in root.findall('bar/type'):
    value = type_tag.get('foobar')
    print(value)

Output:

1
2
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何解析 XML 并获取特定节点属性的实例? 的相关文章

随机推荐

  • 哪些 Spark 转换会导致 Shuffle?

    我很难在 Spark 文档中找到导致随机播放的操作和不会导致随机播放的操作 在这个列表中 哪些会导致洗牌 哪些不会 映射和过滤器则不然 但是 我不确定其他人的情况 map func filter func flatMap func mapP
  • 将 SimpleDateFormat 转换为 DateTimeFormatter

    因此 当尝试使用 SimpleDateFormat 和 Date 替换一些遗留代码以使用 java time DateTimeFormatter 和 LocalDate 时 我遇到了问题 这两种日期格式不等效 在这一点上 我必须说我知道这两
  • 生成产品激活序列号

    首先 这不是为其他产品生成序列号的问题 我是not寻求 破解 其他产品 这是我的要求 我想生成一个标准的序列号 AILU7 ABCDE 54321 1234 AFCK 17UDF 我需要一些过程来验证该序列号是否 有效 这部分确实not必须
  • 在 Laravel 中更新数据库的多行

    我想要一个用于更新多行数据库的代码 如下所示 UPDATE values SET data options male female default male where project id 1 and id 1 UPDATE values
  • 设计新的 Twitter 小部件(嵌入时间线)

    几天 几周前 我的一些网站的 Twitter 小部件停止正确提取数据 事实证明 版本 2 的 Twitter 小部件已被弃用 显然 新的嵌入式时间轴小部件是唯一的出路 https dev twitter com blog planning
  • oracle apex 值列表 - 选择值并在下一个字段的 SQL 查询中使用

    我将 Apex 4 0 2 与 Oracle XE 11 结合使用 我有一个表格 上面有一个字段 P200 CARD TYPE 是从值列表中设置的 我想要发生的是使用我在设置 仅显示 字段的查询中选择的值 P200 DESC 在源代码部分中
  • 在for循环中声明两个变量

    是否可以在 for 循环的初始化部分声明两个变量 我想对字符串的每个字符调用一个函数 for var i 0 c aString charAt i i lt aString length i problem here not itterat
  • 使用 javascript 区分表单中的两个提交按钮

    我怎样才能知道在javascript中点击了哪个提交按钮 function submitForm if find open popup else if add continue in the same window
  • 骆驼模拟 - MockEndpoint.whenAnyExchangeReceived 处理方法不执行

    我下面有示例代码 为什么 MockEndpoint whenAnyExchangeReceived 中的 process 方法没有执行 我期望响应是 来自模拟远程 http 调用的预期正文 但实际响应是请求中传递的内容 Camelrocks
  • 如何通过批处理将 SQL 存储过程保存到 .sql 文件

    我想将我的 MS SQL Server 2005 存储过程自动保存到 sql 文件 更喜欢可以通过 bat 调用的工具 这样我就不必手动单击每个存储过程并保存它 我已经从 devio IT 找到了 SMOscript 但它会收集所有表和存储
  • 无法更改 Android 模拟器中的电池配置

    我试图在模拟器中将电池状态更改为容量和交流状态 但不起作用 我做了整个步骤 1 通过telnet连接到模拟器 2 尝试使用 power ac off 和 powercapacity 70 等命令3 每次我检查电量显示时 都会出现相同的配置
  • 完整 .NET Framework 控制台应用程序中的 JSON 配置

    我有一个针对 NET 4 7 1 的控制台应用程序 我正在尝试在我的 Net Framework 应用程序中使用 net core 之类的配置 我的 App config 是
  • 限制 C++ 函数允许的抛出有什么好处? [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • 为什么 Hibernate 尝试加载“not-found=ignore”关联?

    我有一个类 代表一个项目 它通过多对一关系映射另一个类 代表一个用户 随着用户的来来去去 我确保设置未找到财产给ignore关系上 然而 Hibernate 似乎仍然尝试通过为每个项目执行一个额外的 SQL 查询来加载 丢失的 用户 未找到
  • 如何让我的 DIV 出现在彼此下方

    我有以下内容 div style padding right 1 div
  • 如何访问对象ID标识属性?

    在 IB 的 身份 选项卡下 您可以找到一个名为 对象 ID 的属性 我找不到从代码中获取此 ID 的方法 哦 我知道标签属性 但这不是我需要的 我本质上想获取屏幕上触摸的 UIComponent 的唯一对象 ID 我已经有了 UITouc
  • Xcode 构建完美失败——找不到 COpenSSL

    代码 8 0 Swift 工具链 3 0 版本 完美的 Package url https github com PerfectlySoft Perfect HTTPServer git majorVersion 2 minor 0 跑起来
  • PID和TID的区别

    PID和TID有什么区别 标准答案是 PID 用于进程 而 TID 用于线程 然而 我发现有些命令可以互换使用它们 例如 htop有一个 PID 列 其中显示同一进程的线程的 PID 具有不同的值 那么PID什么时候代表线程或进程呢 这很复
  • 如何检测IE6,并显示警报?

    我试图在使用 IE6 的用户使用我的网站时显示警报 我想这样的事情会起作用 我会对此进行测试 但我没有可以使用 ATM 的 Windows 盒子 这是正确的方法吗 是的 这有效 当然 你可以使用像这样的东西 http code google
  • 如何解析 XML 并获取特定节点属性的实例?

    我在 XML 中有很多行 并且正在尝试获取特定节点属性的实例