Я использовал аналогичный код для этого и нашел, что всегда стоит читать документацию ... как обычно!
findall () будет находить только элементы, которые являются прямыми дочерними элементами текущий тег . Итак, не совсем ВСЕ.
Возможно, вам стоит попробовать, чтобы ваш код работал со следующим, особенно если вы имеете дело с большими и сложными файлами xml, чтобы эти под-элементы ( и т. д.). Если вы знаете, где находятся элементы в вашем xml, я полагаю, все будет хорошо! Просто подумал, что это стоит вспомнить.
root.iter()
ref: https://docs.python.org/3/library/xml.etree.elementtree.html#finding-interesting-elements «Element.findall () находит только элементы с тегом, которые являются прямыми дочерними элементами текущего элемента. Element.find () находит первого дочернего элемента с определенным тегом, а Element.text обращается к текстовому содержимому элемента. Элемент. get () обращается к атрибутам элемента: "