def translate_text(query, source_lang_code, target_lang_code):
"""returns translated text or text indicating a translation/network error
Takes a text to be translated, source language and target language code
2 letter ISO code found in language_list.py
"""
try:
translations = TRANSLATION_SERVICE.translations().list(
source=source_lang_code,
target=target_lang_code,
q=query
).execute()
translation = translations['translations'][0]
if 'detectedSourceLanguage' in translation.keys():
source_lang_code = translation['detectedSourceLanguage']
resp = random.choice(_TRANSLATE_RESULT).format(
text=translation['translatedText'],
fromLang=language_code_dict[source_lang_code],
toLang=language_code_dict[target_lang_code])
except (HTTPError, URLError, HTTPException):
resp = random.choice(_TRANSLATE_NETWORK_ERROR)
except Exception:
resp = random.choice(_TRANSLATE_ERROR)
return resp
app.py 文件源码
python
阅读 23
收藏 0
点赞 0
评论 0
评论列表
文章目录