python 以一种特定模式解析 xml

标签 python xml elementtree

我有一个这样格式的xml文件:

<?xml version="1.0" encoding="UTF-8" ?>
<TAGA>
   <TAGB>TEXTB</TAGB>
   TEXTA
</TAGA>

我正在使用 elementTree 来解析文件的这一部分。

通过使用 TagB.text,我可以成功获取“TEXTB”。

我的问题是“TEXTA”。我尝试过 TagA.text,它总是返回 None。有谁知道我应该如何获取“TEXTA”?

最佳答案

使用tail xml.etree.ElementTree.Element 的属性对象:

在这种情况下,tail 属性将保存 TAGB 结束标记和下一个标记之间的文本

...
tree = ET.parse("yourfile.xml")
root = tree.getroot()

print(root.find('TAGB').tail.strip())

输出:

TEXTA

关于python 以一种特定模式解析 xml,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44314409/

相关文章:

Python 在 XML 元素中搜索数据

python - 可以告诉 ElementTree 保留属性的顺序吗?

python - 构建后如何运行Docker命令?

Python 等同于 R poly() 函数?

java - Install4j 使用正则表达式和 xpath 表达式更新 XML 文件

java - JAXB java.util.Map 到键值对

c# - 从类中的列表属性中删除元素

python - ElementTree模块分离xml内容

python - 即使使用ssh.exe的完整路径,Python也无法使用subprocess.run在Windows中找到ssh二进制文件

python - 将属性名称传递给 Python 中的函数