xmlを整形を出力する

テキストとして出力はできる、が整形されてない。

import xml.etree.ElementTree as ET

xml = ET.fromstring(xml_string)
xml_string = ET.tostring(xml, encoding='utf-8').decode('utf-8')

これを整形出力する。

import xml.dom.minidom

xml = xml.dom.minidom.parseString(xml_string) # or xml.dom.minidom.parse(xml_fname)
pretty_xml_as_string = xml.toprettyxml()

Pretty printing XML in Python - Stack Overflow