[Python] sub2po erreur encodage
la quiche
Messages postés
268
Statut
Membre
-
la quiche Messages postés 268 Statut Membre -
la quiche Messages postés 268 Statut Membre -
Bonjour,
Bonjour,
C'est pas trop le bon forum, mais je sais pas trop où poser la question. J'essaie d'utiliser sub2po pour convertir des fichiers srt en fichier po. (http://docs.translatehouse.org/projects/translate-toolkit/en/latest/commands/sub2po.html?id=toolkit/sub2po le programme est en python).
Mon srt d'origine est en ISO-8859-1. Je l'ai converti en UTF-8 avec iconv. Il n'y pas de BOM.
Je le convertis en po avec sub2po. Je traduis mes sous-titres (anglais vers français).
Quand je veux reconvertir mon po en srt, j'ai une erreur :
Traceback:
C'est le premier ù qui le fait tousser.
Je ne comprend pas du tout l'erreur, et surtout ce qu'il faut que je corrige. J'ai fait le tour de tous les problèmes possibles (j'ai même vérifié que les accents passent en console). Le code source de iso8859_2.py est ici : http://svn.python.org/projects/python/trunk/Lib/encodings/iso8859_2.py
Bonjour,
C'est pas trop le bon forum, mais je sais pas trop où poser la question. J'essaie d'utiliser sub2po pour convertir des fichiers srt en fichier po. (http://docs.translatehouse.org/projects/translate-toolkit/en/latest/commands/sub2po.html?id=toolkit/sub2po le programme est en python).
Mon srt d'origine est en ISO-8859-1. Je l'ai converti en UTF-8 avec iconv. Il n'y pas de BOM.
Je le convertis en po avec sub2po. Je traduis mes sous-titres (anglais vers français).
Quand je veux reconvertir mon po en srt, j'ai une erreur :
'charmap' codec can't encode characters in position 104-105: character maps to <undefined>
Traceback:
po2sub: warning: Error processing: input essai.po, output essai.srt, template sous-titres anglais.srt: Traceback (most recent call last):
File "/usr/lib/python2.7/dist-packages/translate/misc/optrecurse.py", line 528, in recursiveprocess
fulltemplatepath)
File "/usr/lib/python2.7/dist-packages/translate/misc/optrecurse.py", line 583, in processfile
**passthroughoptions):
File "/usr/lib/python2.7/dist-packages/translate/convert/po2sub.py", line 60, in convertsub
outputstring = convertor.convertstore(includefuzzy)
File "/usr/lib/python2.7/dist-packages/translate/convert/po2sub.py", line 51, in convertstore
return str(self.templatestore)
File "/usr/lib/python2.7/dist-packages/translate/storage/subtitles.py", line 104, in __str__
return output.getvalue().encode(self._subtitlefile.encoding)
File "/usr/lib/python2.7/encodings/iso8859_2.py", line 12, in encode
return codecs.charmap_encode(input,errors,encoding_table)
UnicodeEncodeError: 'charmap' codec can't encode characters in position 104-105: character maps to <undefined>
C'est le premier ù qui le fait tousser.
Je ne comprend pas du tout l'erreur, et surtout ce qu'il faut que je corrige. J'ai fait le tour de tous les problèmes possibles (j'ai même vérifié que les accents passent en console). Le code source de iso8859_2.py est ici : http://svn.python.org/projects/python/trunk/Lib/encodings/iso8859_2.py
A voir également:
- [Python] sub2po erreur encodage
- Citizen code python - Accueil - Outils
- Erreur lors de l'enregistrement du contact - Forum Xiaomi
- Erreur upes 1025 - Forum Téléviseurs
- Erreur t32 ✓ - Forum Livebox
- Erreur 3000 france tv - Forum Lecteurs et supports vidéo
1 réponse
Je me réponds à moi-même, mais si jamais quelqu'un passe par là et qu'il a le même problème...
C'est le fait que le sous-titrage d'origine soit en iso-8859-1 qui pose problème. Il faut :
-ôter toutes les lettres "bizarres" du sous-titre original (iconv est silencieux sur les erreurs), remplacer à par a etc...
- ensuite convertir en UTF-8
-faire sub2po etc...
- editer le fichier po (en UTF-8)
- po2sub
Et ça roule.
C'est le fait que le sous-titrage d'origine soit en iso-8859-1 qui pose problème. Il faut :
-ôter toutes les lettres "bizarres" du sous-titre original (iconv est silencieux sur les erreurs), remplacer à par a etc...
- ensuite convertir en UTF-8
-faire sub2po etc...
- editer le fichier po (en UTF-8)
- po2sub
Et ça roule.