【发布时间】:2011-01-27 04:41:10
【问题描述】:
我有一个包含 70000 个字符的网页。如您所知,通过 Google API 进行翻译时,一次最多只能发送 5000 个字符。这意味着我必须向 Google 发送数据 14 次(70000/5000),这需要很长时间,然后我的页面才会显示出来。有没有办法加快这个过程?
谢谢
【问题讨论】:
标签: api google-translate
我有一个包含 70000 个字符的网页。如您所知,通过 Google API 进行翻译时,一次最多只能发送 5000 个字符。这意味着我必须向 Google 发送数据 14 次(70000/5000),这需要很长时间,然后我的页面才会显示出来。有没有办法加快这个过程?
谢谢
【问题讨论】:
标签: api google-translate
您是否尝试过缓存翻译?
【讨论】:
如果您使用了一些 AJAX 框架(您没有提及您的网页是用什么创建的,例如 c#),那么您可以通过 AJAX 框架进行 API 调用来加快速度。
它看起来像这样(伪代码,因为我们不知道你在使用什么):
Serve web page (almost instant)
Web page starts AJAX call:
Break text into chunks
Foreach chunk
Translate via API
Append to the page
这样,用户会立即看到页面,并且还会看到翻译在处理过程中逐段显示,而不必等到结束。
【讨论】:
我最好的选择是用一种语言生成一个页面,然后让谷歌通过 HTTP 翻译它并显示你自己的结果,以使其对用户无缝。我相信这就是谷歌浏览器在翻译网页时所做的。
让谷歌翻译整个网页的网址示例:
http://translate.google.com/translate?hl=en&sl=ru&tl=en&u=http%3A%2F%2Flinux.org.ru%2F
当然,如果页面内容不经常更改,另一种选择是使用 Google Translate API 并缓存结果。
【讨论】:
转到 Google 中的 Javascript 文件,它还会引导您到 CSS 文件,制作一个或两个文件,或者您可以将 CSS 添加到您自己的文件中,现在在您的网站上制作自己的 Javascript 页面目录。每隔几秒或几分钟编写一段代码来更新 Javascript 代码,这将使转换更快,只需刷新他们提供的内容.. 玩得开心 :) 最终你也可以同时发送请求time 作为 char 5000 之后的第一个翻译,这应该相对容易做到。
【讨论】: