when I launch this code he generated xml file which contain xml version <\?xml version="1.0" ?>, I tried exclude this line using xml_declaration=False, but error appears:
TypeError: prettify() got an unexpected keyword argument 'encoding'
How I can cut this string from my xml file ?
from xml.etree import ElementTree
from xml.dom import minidom
from lxml.etree import Element, SubElement
def prettify(templateXml):
rough_string = ElementTree.tostring(templateXml)
reparsed = minidom.parseString(rough_string)
return reparsed.toprettyxml(indent="\t")
top = Element('Options')
element = SubElement(top, 'Some ID')
element.text = ' '
element = SubElement(top, 'Test0')
element.text = 'Some text'
SubElement(top, 'Test1', {'enabled': 'true', 'Values': 'true'})
SubElement(top, 'Test2', {'enabled': 'true', 'Values': 'true'})
SubElement(top, 'Test3', {'enabled': 'true', 'Values': 'true'})
SubElement(top, 'Test4', {'enabled': 'true', 'Test5': 'true', 'Zero': 'true'})
SubElement(top, 'Test6', {'enabled': 'true', 'Values': 'true', 'Zero': 'true'})
SubElement(top, 'Test7', {'enabled': 'true', 'Values': 'true', 'Zero': 'true'})
SubElement(top, 'Test8', {'enabled': 'true', 'Values': 'true', 'Zero': 'true'})
with open("output/some_xml_file.xml", 'w') as f:
f.write(prettify(top))