Comment faire pour remplacer une valeur d'un attribut xml à l'aide de Python minidom
J'ai le code xml suivant:
<country name="Liechtenstein">
<rank>1</rank>
<year>2008</year>
<gdppc>141100</gdppc>
<neighbor direction="E" name="Austria"/>
<neighbor direction="W" name="Switzerland"/>
</country>
Je veux remplacer la valeur "Liechtenstein" avec "l'Allemagne", de sorte que le résultat devrait ressembler à ça:
<country name="Germany">
<rank>1</rank>
<year>2008</year>
<gdppc>141100</gdppc>
<neighbor direction="E" name="Austria"/>
<neighbor direction="W" name="Switzerland"/>
</country>
Jusqu'à présent, je suis à ce point:
from xml.dom import minidom
xmldoc = minidom.parse('C:/Users/Torah/Desktop/country.xml')
print xmldoc.toxml()
country = xmldoc.getElementsByTagName("country")
firstchild = country[0]
print firstchild.attributes["name"].value
#simple string mathod to replace
print firstchild.attributes["name"].value.replace("Liechtenstein", "Germany")
print xmldoc.toxml()
- Que fais-tu si loin?
- Je peux accéder à la valeur, mais vous ne savez pas comment la remplacer.
- Il est préférable d'inclure le code que vous avez de sorte qu'il peut être mis à jour / modifiés pour remplacer la valeur.
- S'il vous plaît, voir mon edit.
Vous devez vous connecter pour publier un commentaire.
Siméon ligne ne fonctionne pas.
Alternativement, vous pourriez faire ceci:
La ligne suivante ne change pas réellement le XML:
Il ne reçoit que de la valeur, remplace Liechtenstein avec l'Allemagne dans cette chaîne et imprime cette chaîne. Il ne modifie pas la valeur dans le document XML.
Vous devez affecter une nouvelle valeur directement: