如何使用xml.etree.ElementTree在python中关闭一个标记后在嵌套的xml中提取文本

时间:2013-05-22 21:05:01

标签: python xml parsing elementtree

我想提取xml文档中的所有文本,我遇到以下情况的问题:

...
<a>
hello
<B>
there
</B>
How was your day.

.....
</a>

在这个片段中,我可以获得文本“hello”和“there”,因为我可以使用以下标记来获取它们:

a.text
b.text

但我不知道如何访问“你今天过得怎么样”。一部分。

1 个答案:

答案 0 :(得分:1)

您正在寻找元素的.tail attribute

>>> from xml.etree import ElementTree
>>> example = ElementTree.fromstring('''\
... <a>
... hello
... <B>
... there
... </B>
... How was your day.
... </a>
... '''
... )
>>> example
<Element 'a' at 0x10715d150>
>>> example.text
'\nhello\n'
>>> example.find('B')
<Element 'B' at 0x10715d7d0>
>>> example.find('B').text
'\nthere\n'
>>> example.find('B').tail
'\nHow was your day.\n'