Ответ 1
Как сказано в этот поток, нет реального способа изменить отступ в lxml.etree.tostring
довольно-печатном виде.
Но вы можете:
- добавить преобразование XSLT для изменения отступа
- добавьте пробел в дерево, с чем-то вроде библиотека cElementTree
код:
def indent(elem, level=0):
i = "\n" + level*" "
if len(elem):
if not elem.text or not elem.text.strip():
elem.text = i + " "
if not elem.tail or not elem.tail.strip():
elem.tail = i
for elem in elem:
indent(elem, level+1)
if not elem.tail or not elem.tail.strip():
elem.tail = i
else:
if level and (not elem.tail or not elem.tail.strip()):
elem.tail = i