为什么HTML标记中的文本有时无法翻译?

时间:2019-04-01 01:59:03

标签: google-translate

我编写了一个使用Google Translate Python API来翻译网页的程序。在大多数情况下,API会按照我的预期进行翻译,但是在某些情况下,标记中的文本不会得到翻译。

我尝试在Google Translate网络界面中放置一个这样的标签,但发现文本仍未翻译;也就是说,问题与Google翻译服务有关,而不是我使用API​​的方式。

我正在查看的特定标签是:<div class="someClass">World:</div>

我希望在输出中翻译“世界”一词,而不管我要翻译成哪种语言。在某些语言(例如法语和高棉语)中,“世界”一词的翻译符合预期,但是在其他语言中(例如西班牙语和索马里语),它仍然是“世界”。我已经注意到,删除class属性有时会有所帮助(翻译后可以用西班牙语运行,但不能在索马里使用),添加更多文本似乎也有帮助(当文本为完整的句子或段落时,我从未见过此问题,因为例如)。

在我的项目中,正确处理标签内仅包含一个单词的情况尤为重要。有谁知道为什么会这样或我如何使翻译始终如一?只需对原始HTML进行很少甚至没有更改的解决方案将是理想的。

编辑基于玩法的更多上下文:直接调用google.cloud.translate.Client().translate('<div class="someClass">World:</div>', 'es')实际上具有正确的行为:“世界”变为“世界”。我通过添加原始网页中div前后的标签(其中没有一个包裹多个文字)来逐步加长页面文本,并且当文本为大约1000个字符。但是,当我将“世界:”更改为整个句子时,即使页面文字超过1000个字符,标记之间的所有文字也都被翻译了。

0 个答案:

没有答案
相关问题