I have a XML file "definitions.xml" with below content.
<Definitions>
<Process name="en">
<property name="am">OLD_A</property>
<property name="24hours" xsi:type="xsd:boolean">OLD_B</property>
</Process>
</Definitions>
I want to modify the file as below:
<Definitions>
<Process name="en">
<property name="am">NEW_A</property>
<property name="24hours" xsi:type="xsd:boolean">NEW_B</property>
</Process>
</Definitions>
I have tried below code:
from lxml import etree
def Definations_Parser():
global Definations_tree
global Definations_root
parser = etree.XMLParser(remove_blank_text = True)
Definations_tree = etree.parse('C:\\Users\\dell\\Desktop\\definitions.xml', parser)
Definations_root = Definations_tree.getroot()
def Definations_File_Modify():
Process_1 = Definations_root.find('Process')
property_1 = Process_1.find('property[@name="am"]')
print ('Current value is:', property_1.get('name'))
def Definations_File_Write():
Definations_tree.write('C:\\Users\\dell\\Desktop\\definitions.xml', pretty_print = True)
Definations_Parser()
Definations_File_Modify()
Definations_File_Write()
How can I get current present values "OLD_A" and "OLD_B" and change it to "NEW_A" and "NEW_B" ?