Cómo hacer traducción automática de idiomas con Python.

Traducción de un interesantísimo artículo de Jordan Kalebu explicando cómo utilizar Python para realizar traducción automática de idiomas, usando 3 bibliotecas alternativas: Goslate, Googletrans y TextBlob. Una forma super sencilla y gratuita de traducir de forma automática todos tus artículos lleguen a mas personas, sin importar el idioma que hablen.

Google Translate APIPythontraducción automática
7 diciembre, 2021 Traducción automática de idiomas mediante Python
7 diciembre, 2021 Traducción automática de idiomas mediante Python

Hola amigos de la tecnología, hoy voy a compartir con vosotros un sistema para hacer traducción automática de idiomas con Python. Entendemos traducción de idiomas como la traducción de datos textuales de un idioma a otro, manteniendo el mismo significado semántico.

En la actualidad tenemos más de 6.500 lenguas habladas, de ellas, más de 3.982 lenguas han desarrollado un sistema de escritura. Saber cómo realizar la traducción de idiomas de forma automática puede ser un gran superpoder para conseguir que tus artículos, ebooks, etc. lleguen a muchas más personas, sin importar el idioma que hablen.

Disclaimer: Este es un ejercicio de traducción realizado por un estudiante de traducción en prácticas. Si lo que necesitas son servicios de traducción profesional, contacta con la empresa de traducción Ibidem Group, en su agencia de traducciones en Barcelona. Ahora también agencia de traducciones en Madrid.

Comencemos a traducir!

Aquí nos vamos a limitar a explicar los fundamentos de la traducción automática de idiomas en Python, utilizando modelos pre-entrenados.

Bibliotecas Python

Hay varias bibliotecas en Python para realizar traducción automática. A continuación indicamos algunas de esas bibliotecas, pero lo cierto es que casi todo el mundo usa la API Google Translate.

Analízalas y elige la que más te guste para usarla en tus proyectos personales de traducción automática. En este post yo analizaré sólo tres: Goslate, Googetrans y TextBlob.

Traducción automática con Goslate

Goslate es una API gratuita de python para el servicio de traducción de Google que consulta el sitio web de traducción de Google.

Instalación de Goslate

$~ pip install goslate 

Goslate detectará automáticamente el idioma principal del texto y luego lo traducirá al idioma secundario que usted especifique. Para la especificación del idioma se utiliza el código ISO 639-1 del idioma. Tienes la lista completa en Wikipedia.

Intentemos traducir un texto a Francés.

Lo único que tienes que hacer es especificar el *segundo idioma* (idioma de destino) al que estás traduciendo. Goslate detectará automáticamente tu *idioma primario* (idioma de origen) como se muestra en el ejemplo siguiente

Ejemplo de traducción automática a Francés

 >>> importar goslate 
>>> primary_text = 'Te quiero mucho'
>>> gs = goslate.Goslate()
>>> gs.translate(primary_text, 'fr')
"Je t'aime beaucoup"

Ahora pasemos a la siguiente biblioteca: Google Translate

Traducción automática con Googletrans

Googletrans es una librería python gratuita e ilimitada que implementa la API de Google Translate. Utiliza la API Ajax de Google Translate para hacer llamadas mediante ajax para detectar idioma y traducir textos.

Instalación de Googletrans

 $~ pip install googletrans  

La simplicidad de uso de googletrans y goslate es casi la misma, así que todo depende de que elijas el que más te guste, del mismo modo en googletrans estamos usando el estándar ISO 639-1 para representar los idiomas.

Intentemos traducir un texto de Inglés a Swahili

Ejemplo de traducción automática a Swahili

>>> text = 'This site is awesome'
>>> from googletrans import Translator
>>> translator = Translator()
>>> translator.translate(text , dest ='sw').text
'Tovuti hii ni ajabu

Por último, hagamos una traducción utilizando la biblioteca de PNL Textblob

Traducción automática con TextBlob

TextBlob es una biblioteca de Python (2 y 3) para el procesamiento de datos textuales.
Proporciona una API sencilla para sumergirse en tareas comunes de procesamiento del lenguaje natural (PLN), como el etiquetado de partes del habla, la extracción de frases sustantivas, el análisis de sentimientos, la clasificación, la traducción y mucho más.

Instalación de TextBlob

 $~ pip install textblob 

Una de las cosas buenas de trabajar con textblob es que es una librería de procesamiento de lenguaje natural de propósito general que puedes usar para gran variedad de tareas NLP aparte de la traducción, pero su simplicidad y la sintaxis son casi las mismas que las dos anteriores.

Ejemplo de traducción automática al Inglés

Intentemos traducir un texto de Francés al Inglés

>>> from textblob import TextBlob 
>>> blob = TextBlob('comment ca va ?')
>>> blob.translate(to='en')
TextBlob("How is it going ?")

Bueno, eso es todo. Espero que te hayas divertido aprendiendo a traducir idiomas en Python.

Rate this post

Articulos relacionados


Texto original de Jack McKew, publicado en su blog jackmckew.dev, donde nos explica cómo generar una traducción automática usando Python y la API de Google Translate o la API de DeepL, los 2 mejores motores de Traducción Automática (Machine Translation) del momento.

Traduccion a Español de un articulo de Amirhossein Tebbifakhr, explicando los resultados de los trabajos de la FBK en su intento por automatizar las tareas de post-edición, reduciendo así los esfuerzos de los traductores que revisan las traducciones generadas mediante Traducción...

Traducción a Español de un artículo en Ingles de Arslan Mirza explicando las ventajas y limitaciones de la Traducción Automática, ante los cambios constantes de la información.