我最近开始使用Google云翻译API和python。M在用英语书写的泰卢固语中转换这个词时遇到困难";parishkaram chesamu";。在一般的互联网或移动应用程序谷歌翻译,我们使用的是正确的给出。但API再次返回相同的单词。
谷歌云翻译API:
输入文本:parishkaram chesamu
输出文本:parishkaram chesamu
参数:
text ='''parishkaram chesamu'''
target = "en"
output = translate_client.translate(text)
print(output)
{'translatedText': 'parishkaram chesamu', 'detectedSourceLanguage': 'te', 'input': 'parishkaram chesamu'}
========================================
移动或互联网谷歌翻译:
输入文本:parishkaram chesamu
输出文本:我们已经解决
根据我的评论,我也试图找到一个解决方案,我为这个问题提供了我的解决方案版本。我唯一能可靠工作的测试流程是:(我使用谷歌云翻译(
Step 1: translate your message into a language, it doesn't matter which.
Step 2: get the detectedLanguageCode value from the results in step 1
Step 3: run a transliteration on the original message, with the value from step 2. (I'm using google's deprecated translit API), with thanks to @Ali for providing it!
Step 4: re-run step 1, modifying the original message to be the transliterated output in step 3.
这是我代码中的一个片段,用于显示确切的伪流。(我去掉了错误检查、背压等复杂性(。
// run request
let [response] = await translate(request);
request['contents'][0] = await transliterate(request.contents[0], response.translations[0].detectedLanguageCode);
[response] = await callWithRetry(request, interaction, channel);
return response;
Translaterate是基于上面发布的链接,我收集并设置为:
const url = `https://inputtools.google.com/request?text=${srcMessage}&itc=${srclang}-t-i0-und&num=${numChoices}&cp=0&cs=1&ie=utf-8&oe=utf-8&app=demopage`;
其中srcMessage是原始文本,srclang是步骤2的输出,我设置了numchoices(你指的是音译为1的可能数量(