Модуль translate неправильно переводит строки
Есть задача: распарсить json файл в excel таблицу. Нужно циклом пройтись по json, взять оттуда каждый ключ и перевести с английского на русский. Далее переведенный текст записать в excel таблицу. Для решения задачи выбрал модуль translate. Однако, он выдавал ошибку Runtime Error. Прогуглил, написали, что проблема в том, что модуль видит пустую строку, пытается перевести и выкидывает эту ошибку (хоть в json нету пустых значений, но все же). Далее столкнулся с проблемой, что модуль неправильно переводит строки. Перевод на русский не соответствует оригиналу на английском, хотя, если отдельно переводить каждую строку, то переводит корректно. В чем проблема?
Файл json:
{
"title": "Bitcoin Miner Marathon Digital's CFO to Retire After One Year",
"description": "Hugh Gallagher intends to retire effective May 12.",
}
Мой код:
translator= Translator(to_lang="Russian")
with open('res.json') as file:
templates = json.load(file)
for item in templates:
try:
res = translator.translate(item['title'])
print(res)
except RuntimeError:
pass
Ответы (1 шт):
Нашёл более эффективное и простое решение. Установил библиотеку googletrans через команду pip install googletrans==3.1.0a0 и далее:
translator = Translator()
with open('res.json') as file:
templates = json.load(file)
for item in templates:
result = translator.translate(item['title'], dest='ru')
print(result.text)