70000文字のWebページがあります。ご存知のように、Google APIを介して翻訳を行う場合、一度に送信できるのは最大5000文字までです。つまり、Googleに14回(70000/5000)データを送信する必要があり、時間がかかり、ページが表示されます。プロセスをスピードアップする方法はありますか?
ありがとう
70000文字のWebページがあります。ご存知のように、Google APIを介して翻訳を行う場合、一度に送信できるのは最大5000文字までです。つまり、Googleに14回(70000/5000)データを送信する必要があり、時間がかかり、ページが表示されます。プロセスをスピードアップする方法はありますか?
ありがとう
翻訳をキャッシュしようとしましたか?
何らかの AJAX フレームワークを使用している場合 (Web ページが 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
このようにして、ユーザーはページをすぐに見ることができ、最後まで待たずに翻訳が処理されるたびに翻訳が少しずつ表示されます。
私の最善の策は、1 つの言語でページを生成し、Google に HTTP 経由で翻訳を依頼し、結果を独自のものとして表示して、ユーザーにとってシームレスにすることです。それがウェブページを翻訳するときに Google Chrome が行うことだと思います。
Google にウェブページ全体を翻訳させる URL の例:
http://translate.google.com/translate?hl=en&sl=ru&tl=en&u=http%3A%2F%2Flinux.org.ru%2F
もちろん、ページのコンテンツが頻繁に変更されない場合は、Google Translate API を使用して結果をキャッシュするという別のオプションもあります。