Python Glossary English

Python 3.8+xml.etree.ElementTreeпонятие

xml.etree.ElementTree.C14NWriterTarget

канонизация

Цель XMLParser, которая не строит дерево, а сразу пишет канонический C14N 2.0 через переданную функцию write.

Синтаксис

target = ET.C14NWriterTarget(write, *, with_comments=False, strip_text=False, ...)

Это движок canonicalize(): нужен, когда документ большой и строить дерево ради канонизации накладно, или когда вывод уходит в поток по частям. write получает str, поэтому подходит list.append или метод write текстового файла, а не бинарного. Опции те же, что у canonicalize() (strip_text, with_comments и др.). Вывод появляется только после close() парсера.

Примеры

import xml.etree.ElementTree as ET
out = []
p = ET.XMLParser(target=ET.C14NWriterTarget(out.append))
p.feed('<a z="1" a="2"/>')
p.close()
print(''.join(out))  # → <a a="2" z="1"></a>

См. также

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