JavaScript
api
GoogleAppsScript
gas
GoogleCloudPlatform

3 分で作る無料の翻訳 API with Google Apps Script

概要

Google 翻訳 API を無料で使えないかと思ってたところ、 Google Apps Script の LanguageApp クラスを発見し、「これは!」と思ったので早速 GAS から使って無料の翻訳 API 作ってみた話です。 GAS のシンプル設計のおかげで実装は非常に簡単なので、 3 分でサクッと作れます。

1. GAS にアクセス

https://script.google.com にアクセスし、 + 新規スクリプト を選択。GAS エディタが立ち上がる。

スクリーンショット 2018-03-29 20.52.21.png

2. 実装

GAS プロジェクトに適当に名前をつけて、コーディング開始。コードは以下の 5 行で完成(エラーハンドリングサボってます)。

スクリーンショット 2018-03-29 20.50.37.png

コードは以下。リポジトリはこちら > 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. デプロイ

以下ポチポチ作業でデプロイ。

スクリーンショット 2018-03-29 20.50.45.png

公開 > ウェブアプリケーションとして導入 を選択。

スクリーンショット 2018-03-29 20.51.00.png

新規作成 のところにバージョン番号(今回は初めてのバージョンなので 1 )を設定。実行ユーザーは自分のメールアドレスを選択し、アクセス制限は 全員(匿名ユーザーを含む) を選択して 導入 ボタンをクリック。

スクリーンショット 2018-03-29 21.07.42.png

すると URL が表示されるので、ここにアクセスすれば OK。

API 叩いてみる

今回デプロイしたのはこちらの URL。

https://script.google.com/macros/s/AKfycbweJFfBqKUs5gGNnkV2xwTZtZPptI6ebEhcCU2_JvOmHwM2TCk/exec

アクセス方法は、 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 最強ですね!

他の GAS ネタ