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())