Python 3.x 在单个文档中翻译多种语言的问题

Python 3.x 在单个文档中翻译多种语言的问题,python-3.x,translate,microsoft-cognitive,python-docx,Python 3.x,Translate,Microsoft Cognitive,Python Docx,我正在尝试一种语言翻译代码,使用的是translate软件包,提供商是Microsoft。输入文本有英语和俄语两种语言,我的目标语言是英语。翻译后的文本不会变为英语。有人能提供一些信息吗 from translate import Translator to_lang = "en" translator = Translator(provider='microsoft', to_lang=to_lang, secret_access_key=secret) translator.translat

我正在尝试一种语言翻译代码,使用的是
translate
软件包,提供商是Microsoft。输入文本有英语和俄语两种语言,我的目标语言是英语。翻译后的文本不会变为英语。有人能提供一些信息吗

from translate import Translator
to_lang = "en"
translator = Translator(provider='microsoft', to_lang=to_lang, secret_access_key=secret)
translator.translate("Elapsed Task Time – время в течение, которого выполнялась задача ")
'Elapsed Task Time – время в течение, которого выполнялась задача '
以下是我试图比较的问题

from googletrans import Translator
translator = Translator()
translator.translate(r.text, dest='en').text

"Elapsed Task Time - the time during which the task was performed"
预期结果

"Elapsed Task Time - the time during which the task was performed"
无论出于何种原因,此库中使用的Microsoft translator API的(旧)版本无法正确自动检测混合语言。如果您的混合语言包括英语,并且您为另一种语言指定了
from_lang
,则该功能将起作用。它总是检测英语。例如,如果您从_lang='ru'指定
,并将其翻译为“it”,则英语部分也将翻译为意大利语

因此,回到您的场景,这应该是可行的:

translator = Translator(provider='microsoft', to_lang=to_lang, from_lang='ru', secret_access_key=secret)
也就是说,我建议你看看:。特别是Translate.py。这应该按照预期工作,并使用最新的API(更准确地说,您可以控制哪个API)