-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathprueba9.py
29 lines (23 loc) · 1.11 KB
/
prueba9.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
import json
import unicodedata
from googletrans import Translator
def traducir_a_catalan(texto):
traductor = Translator()
datos = json.loads(texto) # Analizar el objeto JSON
traducciones = {}
for clave, valor in datos.items():
deteccion_idioma = traductor.detect(valor)
if deteccion_idioma.lang == 'it':
traduccion = traductor.translate(valor, dest='ca')
traduccion_texto = traduccion.text.encode('latin-1').decode('unicode-escape')
traducciones[clave] = unicodedata.normalize('NFC', traduccion_texto)
elif deteccion_idioma.lang == 'en':
traducciones[clave] = valor # No se necesita traducción si está en inglés
else:
traducciones[clave] = valor # Mantener el valor original si no es italiano ni inglés
resultado = json.dumps(traducciones) # Convertir el diccionario traducido a JSON
return resultado
# Ejemplo de uso
texto_ingles_italiano = '{"empty-text": "Nessun dato"}'
print(traducir_a_catalan(texto_ingles_italiano))
# Salida: '{"name": "John Doe", "message": "Ell com estàs?"}'