Как получить доступ к тексту между тегами с помощью xml.etree.ElementTree

Я пытаюсь извлечь текстовое значение между двумя тегами XML-документа с помощью xml.etree.ElementTree. В следующем примере это будут значения text two и text three. Я могу извлечь только text one. Как мне найти другие тексты из тега <c>?

import xml.etree.ElementTree as ET

root = ET.fromstring(
"<foo><c>text one<sub>ttt</sub>text two<sub>uuu</sub>text three</c></foo>")

print root[0].text # text one

person René Nyffenegger    schedule 09.08.2014    source источник


Ответы (1)


Используйте itertext :

>>> z
<Element 'c' at 0x1030697d0>
>>> for i in z.itertext():
...   print(i)
...
text one
ttt
text two
uuu
text three
person Burhan Khalid    schedule 09.08.2014