【发布时间】:2020-03-10 17:53:36
【问题描述】:
在我的应用程序中,我尝试使用 Google Cloud Translation API 将一些西班牙语文本翻译成英语。我注意到我在翻译后收到的文本是 HTML 转义的,这意味着 "'" 显示为 "&#39<nospace>;",">" 显示为 "&gt;" 等等。
我还通过 curl 脚本使用其余 API 检查了翻译,它给了我相同的转义结果 -
curl --request GET 'https://translation.googleapis.com/language/translate/v2?key=$GOOGLE_API_KEY&q=Es%20un%20brillante%20d%C3%ADa%20soleado&target=en'
对这个 curl 的响应是 -
{
"data": {
"translations": [
{
"translatedText": "It's a bright sunny day",
"detectedSourceLanguage": "es"
}
]
}
}
当我尝试在在线谷歌翻译器(即https://translate.google.com)中将相同的西班牙语文本翻译成英文时,我得到的英文文本是“这是一个阳光明媚的日子”。
我的第一个问题:是因为某种原因而这样做还是这是一个错误?
为了取消转义文本,我使用org.apache.commons.text.StringEscapeUtils.unescapeHtml4() -
StringEscapeUtils.unescapeHtml4(translation.getTranslatedText());
我的第二个问题:这是取消转义翻译文本的正确方法吗?
【问题讨论】:
标签: google-cloud-platform google-translation-api google-cloud-translate