Ya tengo el programilla que te pone la linea en inglés y la traducción automática de google translate en la siguiente linea. En principio es este:
import requests
import time
def traducir(texto):
url = "https://translate.googleapis.com/translate_a/single"
params = {
"client": "gtx",
"sl": "en",
"tl": "es",
"dt": "t",
"q": texto
}
response = requests.get(url, params=params, timeout=5)
data = response.json()
traduccion = "".join([parte[0] for parte in data[0]])
return traduccion
with open("Extracted.txt", "r", encoding="latin-1") as f_in, open("salida2.txt", "w", encoding="utf-8") as f_out:
for i, line in enumerate(f_in):
line = line.rstrip("\n")
if line.strip() == "":
continue
print(f"Procesando línea {i}: {line[:50]}")
try:
translated = traducir(line)
except Exception as e:
print("ERROR:", e)
translated = "[ERROR]"
f_out.write(line + "\n")
f_out.write(translated + "\n")
time.sleep(0.2)
Las primeras versiones me cortaba frases en la misma linea. También lleva un temporizador para que las llamadas a google sean más lentas y no nos bloqueen. El encoding se cambió a latin-1 porque falló como utf-8.
El programa tardará unas horas en procesar las 13.909 lineas. En unas horas lo subo.
Aunque es necesario revisar la traducción.