Я пытаюсь проанализировать XML-документ, чтобы найти все материнские активы, написанные людьми в нашей компании. Проблема, с которой я столкнулся, устраняет всех детей. Например, в фрагменте кода нижеКак перечислить узлы XML, которые не содержат конкретных дочерних элементов
<PAGE ID="ID0001.4">
</PAGE>
<PAGE>
</PAGE>
<PAGE ID="ID0003.1">
<PAGE>
<PAGE ID="ID0004">
<PAGE ID="ID0007.8">
</PAGE>
</PAGE>
</PAGE>
</PAGE>
<PAGE>
<PAGE>
<PAGE ID="ID0012.9">
<PAGE ID="ID0009.2">
</PAGE>
</PAGE>
</PAGE>
</PAGE>
Я хочу вернуть
"ID0001.4"
"ID0003.1"
"ID0012.9"
и не
"ID0004"
"ID0007.8"
"ID0009.2"
Я начал использовать .iter
. Но это не поддерживает список родителей. Так что я попытался удвоить .iter
и удалить детей, которые, на самом деле не работает ...
Я предполагаю, что я должен написать рекурсивную .findall
но действительно надеялся там было более элегантное решение, которое я вид. Рекурсия .findall
была бы необходима, так как я не знаю, как глубоко дерево идет.
Это не ответ на мой вопрос, я не хочу, чтобы вернуться "ID0004" "ID0007.8" " ID0009.2" – Bart