概要
Google 翻訳 API を無料で使えないかと思ってたところ、 Google Apps Script の LanguageApp クラスを発見し、「これは!」と思ったので早速 GAS から使って無料の翻訳 API 作ってみた話です。 GAS のシンプル設計のおかげで実装は非常に簡単なので、 3 分でサクッと作れます。
1. GAS にアクセス
https://script.google.com にアクセスし、 + 新規スクリプト
を選択。GAS エディタが立ち上がる。
2. 実装
GAS プロジェクトに適当に名前をつけて、コーディング開始。コードは以下の 5 行で完成(エラーハンドリングサボってます)。
コードは以下。リポジトリはこちら > https://github.com/tanabee/google-translation-api
function doGet(e) {
var p = e.parameter;
var translatedText = LanguageApp.translate(p.text, p.source, p.target);
return ContentService.createTextOutput(translatedText);
}
コードの説明
- 1, 5 行目: function 定義。ウェブアプリケーションとして公開する時に GET メソッドを受け付ける時のお約束の function 名。
- 2 行目: Event Objects からクエリストリングのオブジェクトを取得
- 3 行目: LanguageApp で翻訳実行
- 4 行目: 翻訳した文字列を return
3. デプロイ
以下ポチポチ作業でデプロイ。
公開
> ウェブアプリケーションとして導入
を選択。
新規作成
のところにバージョン番号(今回は初めてのバージョンなので 1 )を設定。実行ユーザーは自分のメールアドレスを選択し、アクセス制限は 全員(匿名ユーザーを含む)
を選択して 導入
ボタンをクリック。
すると URL が表示されるので、ここにアクセスすれば OK。
API 叩いてみる
今回デプロイしたのはこちらの URL。
アクセス方法は、 exec の後に ?text=翻訳したい文字列
&source=翻訳前言語
&target=翻訳後言語
を指定して GET リクエストする。試しに以下にアクセスするとレスポンスが適切に返ってくるはず(なにかしらの制限で落ちてる場合はすみません)。
こんにちわ
を 英語
に翻訳: https://script.google.com/macros/s/AKfycbweJFfBqKUs5gGNnkV2xwTZtZPptI6ebEhcCU2_JvOmHwM2TCk/exec?text=こんにちわ&source=ja&target=en
こんにちわ
を 中国語
に翻訳:
https://script.google.com/macros/s/AKfycbweJFfBqKUs5gGNnkV2xwTZtZPptI6ebEhcCU2_JvOmHwM2TCk/exec?text=こんにちわ&source=ja&target=zh-cn
まとめ
以上、サクッと翻訳 API を作れました。 GAS 最強ですね!