Google Apps Script(GAS)で翻訳する方法!英訳や和訳の実装(translateメソッド)
Google Apps Script(GAS)で外国語の文章を日本語に翻訳する方法を解説します。
英語を日本語に訳す和訳に加え、反対に日本語を英語に変換する英訳、さらにはスペイン語を英語といった外国語の翻訳ができます。
Google Apps Scriptは翻訳機能も
Google Apps Script(GAS)には、ある言語を別の言語に変換する機能が用意されています。
GASの翻訳機能はもちろん日本語も対応していて、英語のドキュメントを日本語に訳したり、日本語の文章を英訳することもできます。
こうした翻訳機能はグーグルがGoogle翻訳APIとして提供しています。
しかし、一定の翻訳文字数までは無料で利用できますが、上限を超えると利用料がかかってしまいます。
それに対してGASの翻訳機能はそうした上限による費用がかからず、無料で利用可能です。
※ただし、利用し過ぎると実行してもエラーになることもあります。
GASで翻訳するtranslateメソッド
Google Apps Script(GAS)で言語を翻訳する機能を備えているのはtranslateメソッドです。
LanguageApp.translate(str, source, target)
1つ目の引数は翻訳したい文章、2つ目の引数で元文章の言語、3つ目の引数で翻訳したい言語を指定します。
例えば、「This is a pen.」といった英文を日本語に和訳したい場合は以下のようにコードを書きます。
LanguageApp.translate('This is a pen.’, 'en’, 'ja’)
なお、2つ目の引数は「"」という形で省略すると、文章から自動的に言語を判別してくれます。
translateメソッドが翻訳可能な言語
Google Apps Script(GAS)のLanguageApp.translateメソッドで翻訳することができる言語は、GoogleのTranslation APIと同じ言語がサポートされています。
主に以下のような言語がサポート対象となっていて翻訳可能です。
- 英語(en)
- 日本語(ja)
- フランス語(fr)
- スペイン語
- ドイツ語(de)
- イタリア語(it)
- 中国語(zh)
- 韓国語(ko)
- アラビア語(ar)
※LanguageAppの翻訳対象の言語は「言語サポート(Cloud Translation)」より
括弧内に記載している2文字のアルファベットがsource,targetで指定するものです。
100以上の言語がtranslateメソッドで翻訳することができます。
Google Apps Script翻訳のサンプルコード
Google Apps Script(GAS)のLanguageAppのtranslateメソッドで英語の文章を日本語に翻訳するサンプルコードを紹介します。
GAS公式ページの英文を日本語に翻訳を行ってみます。
function translateENtoJP() {
//Google Apps Scriptの公式ページの英文を翻訳する
let text = "Google Apps Script is a scripting language based on JavaScript that lets you customize and extend products such as Docs, Sheets, Slides, and Forms. There's nothing to install—we give you a code editor right in your browser, and your scripts run on Google's servers.";
//translate関数で英語→日本語に和訳
let transText = LanguageApp.translate(text, '', 'ja');
//翻訳した日本語の文章をログ表示する
console.log(transText);
}
実行ログに英文を翻訳した日本語文が出力されています。
日本語を英語に英訳するGASサンプルコード
先程のコードとは反対に日本語の文章を英語に翻訳するGoogle Apps Scriptのサンプルコードも紹介します。
function translateJPtoEN() {
//簡単な日本語の文章を翻訳する
let text = "トンネルを抜けると、そこは雪国だった。";
//translate関数で日本語→英語に英訳
let transText = LanguageApp.translate(text, '', 'en');
//翻訳した英文をログ表示する
console.log(transText);
}
サンプルコードでは、2つ目の引数を「"」の形で省略して、翻訳する文章を自動識別する形としています。
DeepLのAPIを使った高精度な翻訳も
これまで紹介したGoogle Apps Script(GAS)のLanguage.translateメソッドによる翻訳は便利です。
しかし、翻訳結果に不自然に感じることがあります。
もっと高精度な翻訳をしたい場合、DeepLをAPIで使った方法がおすすめです。
DeepLのAPIは無料枠があるため、一定文字数以内なら費用がかからずに高精度な翻訳ができます。
GASでDeepLのAPIを使って翻訳する方法は以下の記事で解説しています。
translateメソッドよりも自然な英訳・和訳したい場合にDeepLのAPIを活用しましょう。
まとめ・終わりに
今回、Google Apps Script(GAS)で翻訳する方法を紹介しました。
LanguageAppクラスのtranslateメソッドを使い、特定言語の文章を別の言語に翻訳できます。
サポートされている言語は豊富で英語や中国語、フランス語といった主要な言語から、ローカルな言語まで対応しています。
ぜひ、翻訳の自動化が必要なケースではGASで実装してみましょう。
ディスカッション
コメント一覧
まだ、コメントがありません