Мне нужно перевести английский .txt файл на немецкий язык, используя сервис перевода AWS и boto3 - PullRequest
2 голосов
/ 11 июня 2019

Я могу преобразовать определенные английские слова в немецкие слова. Но я хочу конвертировать весь файл local.txt.

import boto3

translate = boto3.client(service_name='translate', region_name='us-east-1', use_ssl=True)

result = translate.translate_text(Text="Good Evening", 
        SourceLanguageCode="en", TargetLanguageCode="de")
print('TranslatedText: ' + result.get('TranslatedText'))
print('SourceLanguageCode: ' + result.get('SourceLanguageCode'))
print('TargetLanguageCode: ' + result.get('TargetLanguageCode'))

Я ищу способ преобразования потоковых данных или локального текстового файла, а затем сохранить его на S3 или локально.

1 Ответ

1 голос
/ 11 июня 2019

Поскольку у меня нет учетной записи AWS, я не могу напрямую протестировать API.Однако я могу предложить то, что, по моему мнению, сработало бы.

Сначала прочитайте текстовый файл, который вы хотите перевести в переменную.

with open('text_to_translate.txt', 'r') as text:
   variable_containing_text = text.read()

Затем просто передайте переводчику переменную, скореечем строка.

result = translate.translate_text(Text=variable_containing_text, 
        SourceLanguageCode="en", TargetLanguageCode="de")

Когда помещено в ваш код, оно должно выглядеть так:

import boto3

data = 'file.txt'

translate = boto3.client(service_name='translate', region_name='us-east-1', use_ssl=True)

with open(file, 'r') as text:
   data = text.read()

result = translate.translate_text(Text=data, 
        SourceLanguageCode="en", TargetLanguageCode="de")
print('TranslatedText: ' + result.get('TranslatedText'))
print('SourceLanguageCode: ' + result.get('SourceLanguageCode'))
print('TargetLanguageCode: ' + result.get('TargetLanguageCode'))

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...