Я пытаюсь проанализировать документ XML с узлами, которые имеют некоторый текст, затем объявить дочерний узел, а затем иметь больше текста.Например, второй элемент «post» в XML ниже:
<?xml version="1.0"?>
<data>
<post>
this is some text
</post>
<post>
here is some more text
<quote> and a nested node </quote>
and more text after the nested node
</post>
</data>
Я использовал следующий код, чтобы попытаться распечатать текст каждого узла:
import xml.etree.ElementTree as ET
tree = ET.parse('test.xml')
root = tree.getroot()
for child in root:
print (child.text)
Но, к сожалению,единственный вывод:
this is some text
here is some more text
Обратите внимание, что мне не хватает текста and more text after the nested node
.
Итак,
- Это допустимый XML?
- Если да, как я могу использовать ElementTree или другую библиотеку XML Python для достижения желаемого анализа?
- Если нет, есть ли какие-либо предложения по синтаксическому анализу XML, кроме написания моего собственного анализатора?