Python getchildren() не работает для допустимого дерева XML

Если я запускаю следующий Python в файле XML (см. Внизу Q):

import xml.etree.ElementTree as ET
tree = ET.parse('C:\\temp\\test2.xml')
print(tree.getchildren())

Я получаю ошибку:

AttributeError: у объекта 'ElementTree' нет атрибута 'getchildren'

Я загрузил XML в онлайн-валидатор, и он сказал, что XML в порядке.

2 ответа

Решение

Само дерево не имеет getchildren() метод.

print(tree.getroot().getchildren())

Обратите внимание, что getchildren() устарела. Смотри документацию

getchildren() устарел.

Так что используйте list(elem), в вашем случае используйте list(tree.getroot())

Другие вопросы по тегам