Google Translation APIを使う方法
- プロジェクト作成
- 課金を有効化
- APIを有効化
- 認証情報の設定
- GOOGLE_APPLICATION_CREDENTIALSのパスを通す
- クライアントライブラリのインストール
- コードを実行
の7つの手順を行えば大丈夫
1. プロジェクトの作成
リンクを参考にしてプロジェクトを作成してください
上図の青色「プロジェクトの選択ページに移動」をクリックしてプロジェクトの選択・または作成してください
2. 課金の有効化
リンクを参考にしてプロジェクトに対する課金を有効にしてください。
- 大まかな手順
- 課金が有効になっているかどうかの確認
- Cloud Consoleの左上にあるナビゲーション メニュー(menu)を開き、[お支払い] を選択
- お支払いの概要や月の見積もりが出てきたら課金を有効になっている
- もし請求先アカウントとリンクする、または、請求先アカウントを管理が出てきたら有効になっていない証拠
- プロジェクトと請求先アカウントをリンクする
- 請求先アカウントが存在しなかったら、請求先アカウントを作成する
3. APIの有効化
1.のリンクに記載されている下図のAPIの有効化をクリックしてAPIを有効にしてください
4. 認証情報の設定
認証情報の設定は以下の手順で行う
- サービスアカウントの作成
- サービスアカウントキーの作成
4.1 サービスアカウントの作成
1.のリンクに記載されている下図のサービスアカウントの作成をクリックしてサービスアカウントを以下の手順で作成してください
4.2 サービスアカウントキーの作成
下の手順で実行を行い、キーをダウンロードする
ちなみに、サービスアカウントのメールアドレスは以下の図の場所にある
・左上の三本線をクリック
・認証情報をクリック
・サービスアカウントは下図のように画面下部に存在する。それをクリックしてキーを作成
5. GOOGLE_APPLICATION_CREDENTIALSのパスを通す
先程ダウンロードしたJsonファイルのキーのパスをメモしておく
Macユーザは以下のコマンドを実行
Windowsユーザは以下のコマンドを実行
6. クライアントライブラリのインストール
今回私はPythonを用いてAPIを実行するので以下のコマンドを実行
以下のコマンドは使用するプログラミング言語によって異なるので、Python以外のユーザーは1.のリンクから下記の扱いたい言語を選択してインストール
7.コードの実行
これでGoogle Translation APIを利用する準備が整いました。
サンプルコードはこちらにあります。
以下のサンプルコードを実行しましょう。すると下図の出力が出るはずです
def translate_text(target, text):
"""Translates text into the target language.
Target must be an ISO 639-1 language code.
See https://g.co/cloud/translate/v2/translate-reference#supported_languages
"""
import six
from google.cloud import translate_v2 as translate
translate_client = translate.Client()
if isinstance(text, six.binary_type):
text = text.decode("utf-8")
# Text can also be a sequence of strings, in which case this method
# will return a sequence of results for each text.
result = translate_client.translate(text, target_language=target)
print(u"Text: {}".format(result["input"]))
print(u"Translation: {}".format(result["translatedText"]))
print(u"Detected source language: {}".format(result["detectedSourceLanguage"]))
if __name__ == "__main__":
# execute only if run as a script
translate_text("en","私はペンです")