Python Glossary English

все Python 3xml.etree.ElementTreeисключение

xml.etree.ElementTree.ParseError

исключения

Исключение при разборе некорректного XML. Подкласс SyntaxError; несёт code и position — номер строки и столбца ошибки.

Синтаксис

except ET.ParseError as err: err.position, err.code

Ловите ET.ParseError, а не голый SyntaxError: последний поймает и ошибки в путях find('//x'), и это спрячет разные проблемы под одним обработчиком. position — кортеж (строка, столбец). Невалидный XML рушит разбор целиком: частично разобранного дерева fromstring() не вернёт.

Примеры

import xml.etree.ElementTree as ET
try:
    ET.fromstring('<a><b></a>')
except ET.ParseError as err:
    print(err)  # → mismatched tag: line 1, column 8
    print(err.position, isinstance(err, SyntaxError))  # → (1, 8) True

См. также

Открыть в полном глоссарииdocs.python.orgСообщить о неточности