Traducir un archivo PO con Google Translator y Python

Posted on the febrero 22nd, 2010 under Código Experimental,General,Software Libre by nacho

Mediante el uso de POedit, uno puedo crear traducciones para internacionalización sobre un archivo base, el cuál contiene las cadenas de texto de cierto software. Sin embargo si las cadenas son muchas, podemos hacer uso de alguna herramienta de traducción, y limitarnos a luego revisar y encontrar la traducción más adecuada para el contexto en el que se encuentra cada texto.

Particularmente necesitaba traducir un tema de WordPress que traía su propio archivo .po en inglés (en-EN.po). Hice un pequeño script en Python que hace uso de py-translate. Este módulo hace uso de la API de Google Translate. Quizá a alguno le resulte útil o pueda adaptarlo a sus necesidades (ya que está todo harcodeado dentro :-P).

# coding=utf-8
import gtrans
 
fo = open("en_EN.po","r")
fi = open("es_ES.po","w")
 
for line in fo:
    if line.find("msgid") == 0:
        cad = gtrans.translate("en","es",line.split("\"")[1])
        #print line.encode("utf-8"),
        fi.write(line.encode("utf-8"))
        fi.write("msgstr \""+cad.rstrip().encode("utf-8")+"\"\n")
    elif line.find("msgstr") == 0:
        pass
    else:
        #print line.encode("utf-8"),
        fi.write(line.encode("utf-8"))
 
fo.close()
fi.close()

Sé que Mancho hizo algo parecido en PHP. Apenas pueda lo enlazo.
Enlace al artículo de Mancho

3 Responses to 'Traducir un archivo PO con Google Translator y Python'

  1. noviembre 2, 2010 a las 2:07 pm
    yo
  2. noviembre 2, 2010 a las 2:14 pm
    nacho

Leave a Reply




XHTML::
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>