Учитывая элемент, как этотКак я могу перебирать дочерние текстовые узлы (а не потомки) в ElementTree?
<A>
hello
<annotation> NOT part of text </annotation>
world
</A>
, как я могу получить только ребенок текстовые узлы (например, XPath text()
), используя ElementTree
?
Оба iter()
и itertext()
являются пешеходными дорожками, которые включают в себя все узлы-потомки. Я не знаю, как это сделать. Плюс, iter()
находит только элементов, так или иначе (в конце концов, ElementTree), поэтому не может использоваться для сбора текстовых узлов как таковых.
Я понимаю, что есть библиотека под названием lxml
, которая обеспечивает лучшую поддержку XPath, но я спрашиваю здесь, прежде чем добавлять другую зависимость. (Плюс я очень новичок в Python, так что я, возможно, отсутствует что-то очевидное.)
Спасибо! Это прекрасно работает. У меня было ощущение, что здесь может быть использовано нечетное свойство 'tail'. – harpo