modifier une balise text dans un xml
Bonjour,
Je sais que je ne suis pas très loin, mais je n'y arrive pas! (je suis débutant en python :D)
Je traduis des lignes de textes et je voudrai remplacer le texte original par ce lui de la traduction. J'arrive à créer un autre fichier que le fichier original, mais je n'arrive pas à modifier exactement la balise text.
Voilà ce que j'obtiens... c'est pas très beau!
Citation:
<string_table>
<string id="pri_monol_agent_task_desc0">Le monolithe de reconnaissance, a rapidement été blessé pendant notre sortie avec lui. L'artefact "Svetlyak" l'aidera à récupérer davantage.<text>Монолитовец-разведчик Быстрый получил ранение во время нашей с ним вылазки. Артефакт "Светляк" поможет ему скорее выздороветь.</text>
</string>
Voilà mon code modifié par rapport au résultat ci-dessus:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14
|
import xml.etree.ElementTree as et
import translators as ts
my_tree = et.parse('classeur1_test.xml')
my_root = my_tree.getroot()
for string in my_root.findall('string'):
texte = string.find('text').text
texteT = ts.google(texte, from_language='ru', to_language='fr')
text.text = str(texteT)
print(texteT)
my_tree.write('output.xml') |
et le message d'erreur correspondant à ce code:
Citation:
C:\py4e>mapping3-xml.py
Using state Provence-Alpes-Côte d'Azur server backend.
Traceback (most recent call last):
File "C:\py4e\mapping3-xml.py", line 13, in <module>
text.text = str(texteT)
NameError: name 'text' is not defined. Did you mean: 'texte'?
Merci pour votre aide :D
Tremens