Вы можете использовать ET.SubElement
для создания подэлементов для данного узла. Подробнее здесь .
Тогда вы можете установить .text
в качестве значения этого узла.
Например, рассмотрим следующий входной XML-документ:
<root>
<triggers/>
<triggers/>
</root>
Попробуйте это:
import xml.etree.ElementTree as ET
tree = ET.parse('input.xml')
root = tree.getroot()
#Get all triggers elements
trigger_elements = root.findall('./triggers')
#For each trigger element in your xml document
for trigger in trigger_elements:
#Make subelement to the initial trigger element
time_trigger_element = ET.SubElement(trigger, 'hudson.triggers.TimerTrigger')
#Make subelement to the time trigger elemenent with name 'spec'
spec_element = ET.SubElement(time_trigger_element, 'spec')
#Set the text of spec element to 1 1 1 1 1
spec_element.text = ' '.join(['1']*5)
#Save the xml tree to a file
tree.write("output.xml")
Выходы:
<root>
<triggers><hudson.triggers.TimerTrigger><spec>1 1 1 1 1</spec></hudson.triggers.TimerTrigger></triggers>
<triggers><hudson.triggers.TimerTrigger><spec>1 1 1 1 1</spec></hudson.triggers.TimerTrigger></triggers>
</root>