Gmailは、プライベートだけでなく、ビジネスでも多くの企業が使っているので、何かと、Gmailを一つデータベースとして情報を取得したいと思うときって多々ありますよね。
![](https://clione33.online/wp-content/uploads/2022/12/worried_man01-150x150.png)
そうそう、PythonでGmailの情報を取得する方法ってないの〜?!
(Google App Scriptは基本的にJavaScriptの言語が使われることが多いですが、)
PythonとGoogleサービスを連携するためには、Google API Platformを使う必要があります。
今回はGoogle APIを使って、PythonとGmailの連携方法(前編)をお伝えしていきます。
- Google Cloud Platformから、APIの取得
- APIの認証方法
- Gmail API の設定の流れ
環境
OS | Mac 10.15.4 |
Python | python 3.9 |
仮想環境 | Poetry |
Homebrew | 8.0.19 Homebrew |
それでは、さっそくGoogle Cloud PlatformでAPI情報を取得していきます。
APIとは、Application Programming Interfaceの略称で、あるサービスを連携するための仕組みだと考えると分かりやすいよ
プロジェクトの作成
まずは、上記のURLから、プロジェクトを立ち上げます。
1→2で、新しいプロジェクトを開始します。
![Google Cloud Platform トップページ 新しいプロジェクト](https://clione.online/wp-content/uploads/2021/09/googlecloudplatform2_02.png)
![Google Cloud Platform トップページ 新しいプロジェクト](https://clione.online/wp-content/uploads/2021/09/googlecloudplatform2_02.png)
プロジェクト名を任意のものを自由に決めてOKです。
場所については、企業のGsuiteを使っている場合は、組織名がでてきますが、個人で使用している場合は、組織なしで問題ありません。
![Google Cloud Platform 新しいプロジェクト プロジェクト名 場所](https://clione.online/wp-content/uploads/2021/09/googlecloudplatform3_02.png)
![Google Cloud Platform 新しいプロジェクト プロジェクト名 場所](https://clione.online/wp-content/uploads/2021/09/googlecloudplatform3_02.png)
すでにプロジェクトがある場合
ちなみに、すでにプロジェクトを作成していて複数ある場合は、プロジェクトを選択して、開くをクリックしてください。
![Google Cloud Platform 新しいプロジェクト プロジェクトの選択 開く](https://clione.online/wp-content/uploads/2021/09/googlecloudplatform4_02.png)
![Google Cloud Platform 新しいプロジェクト プロジェクトの選択 開く](https://clione.online/wp-content/uploads/2021/09/googlecloudplatform4_02.png)
Gmailの有効化
トップページのAPIライブラリに戻ります。
今回はGmailを連携させるので、Gmailのアイコンを選びます。(出てこなければ検索も可能です)
![Google Cloud Platform トップページ APIライブラリ Gmail API](https://clione.online/wp-content/uploads/2021/09/googlecloudplatform5_02.png)
![Google Cloud Platform トップページ APIライブラリ Gmail API](https://clione.online/wp-content/uploads/2021/09/googlecloudplatform5_02.png)
有効にするを押して、有効化します。
![Google Cloud Platform APIライブラリ Gmail API 有効にする](https://clione.online/wp-content/uploads/2021/09/googlecloudplatform6_02.png)
![Google Cloud Platform APIライブラリ Gmail API 有効にする](https://clione.online/wp-content/uploads/2021/09/googlecloudplatform6_02.png)
これで、プロジェクトのGmail APIが有効になりました
OAuth認証の設定
Gmail APIをPythonで使うには、認証情報を設定、取得する必要があります。
OAuthを設定することで、ID、パスワードを設定せずに、アプリケーションを認証することができるよ
まずは鍵マーク→同意画面を構成へ進みます。
![Google Cloud Platform Gmail API 認証情報 同意画面を構成](https://clione.online/wp-content/uploads/2021/09/googlecloudplatform7_02.png)
![Google Cloud Platform Gmail API 認証情報 同意画面を構成](https://clione.online/wp-content/uploads/2021/09/googlecloudplatform7_02.png)
企業のGsuiteの場合、組織があれば内部を選択できますが、個人で使用している場合は、外部で問題ありません。
![Google Cloud Platform Gmail API 認証情報 OAuth同意画面 UserTyepe 外部](https://clione.online/wp-content/uploads/2021/09/googlecloudplatform8_02.png)
![Google Cloud Platform Gmail API 認証情報 OAuth同意画面 UserTyepe 外部](https://clione.online/wp-content/uploads/2021/09/googlecloudplatform8_02.png)
ここでは権限をせずに、保存して次へ進みます。
![Google Cloud Platform Gmail API 認証情報 OAuth同意画面 アプリ登録の編集 保存して次へ](https://clione.online/wp-content/uploads/2021/09/googlecloudplatform9_02.png)
![Google Cloud Platform Gmail API 認証情報 OAuth同意画面 アプリ登録の編集 保存して次へ](https://clione.online/wp-content/uploads/2021/09/googlecloudplatform9_02.png)
こちらも保存して次へで進みます。
![Google Cloud Platform Gmail API 認証情報 OAuth同意画面 アプリ登録の編集 テストユーザー 保存して次へ](https://clione.online/wp-content/uploads/2021/09/googlecloudplatform10_02.png)
![Google Cloud Platform Gmail API 認証情報 OAuth同意画面 アプリ登録の編集 テストユーザー 保存して次へ](https://clione.online/wp-content/uploads/2021/09/googlecloudplatform10_02.png)
これでOAuth同意画面の設定が完了しました。
![Google Cloud Platform Gmail API 認証情報 OAuth同意画面 アプリ登録の編集 概要](https://clione.online/wp-content/uploads/2021/09/googlecloudplatform11-1_02.png)
![Google Cloud Platform Gmail API 認証情報 OAuth同意画面 アプリ登録の編集 概要](https://clione.online/wp-content/uploads/2021/09/googlecloudplatform11-1_02.png)
Gmail認証情報を取得
ここからは、Pythonで使うjsonファイルをダウンロードするまでの流れを解説します。
このjsonファイルは、PythonからGoogle APIを連携させるのに必要なファイルです。
認証情報の作成
認証情報を作成を選択します。
![Google Cloud Platform Gmail API 認証情報 認証情報を作成](https://clione.online/wp-content/uploads/2021/09/googlecloudplatform12_02.png)
![Google Cloud Platform Gmail API 認証情報 認証情報を作成](https://clione.online/wp-content/uploads/2021/09/googlecloudplatform12_02.png)
今回はOAuthクライアントIDを選択します。
![Google Cloud Platform Gmail API 認証情報 OAuthクライアントID](https://clione.online/wp-content/uploads/2021/09/googlecloudplatform13.png)
![Google Cloud Platform Gmail API 認証情報 OAuthクライアントID](https://clione.online/wp-content/uploads/2021/09/googlecloudplatform13.png)
アプリケーションの種類は、今回はウェブアプリケーションを選択。
名前は任意のものを自由に決めて問題ありません。
![Google Cloud Platform Gmail API 認証情報 OAuthクライアントIDの作成 作成](https://clione.online/wp-content/uploads/2021/09/googlecloudplatform14_02.png)
![Google Cloud Platform Gmail API 認証情報 OAuthクライアントIDの作成 作成](https://clione.online/wp-content/uploads/2021/09/googlecloudplatform14_02.png)
![Google Cloud Platform Gmail API 認証情報 OAuthクライアントID OAuthクライアントを作成しました](https://clione.online/wp-content/uploads/2021/09/googlecloudplatform15_02.png)
![Google Cloud Platform Gmail API 認証情報 OAuthクライアントID OAuthクライアントを作成しました](https://clione.online/wp-content/uploads/2021/09/googlecloudplatform15_02.png)
これでOAuthクライアントが発行されました。
認証情報のjsonファイルを取得
同じく鍵マークのページから、jsonファイルをダウンロードします。
![Google Cloud Platform Gmail API 認証情報 OAuthクライアントID OAuth2.0クライアントID ダウンロード](https://clione.online/wp-content/uploads/2021/09/googlecloudplatform16_02.png)
![Google Cloud Platform Gmail API 認証情報 OAuthクライアントID OAuth2.0クライアントID ダウンロード](https://clione.online/wp-content/uploads/2021/09/googlecloudplatform16_02.png)
ダウンロードすると、xxxxxxxxx.jsonというフォルダを取得できます。
中身は以下のようになっているはずです。
{"web":
{"client_id":"xxxxxxxxxxxxxxxxx",
"project_id":"xxxxxxxxxxxxxxxxx",
"auth_uri":"https://accounts.google.com/o/oauth2/auth",
"token_uri":"https://oauth2.googleapis.com/token",
"auth_provider_x509_cert_url":"https://www.googleapis.com/oauth2/v1/certs",
"client_secret":"xxxxxxxxxxxxxxxxx"}
}
このjsonファイルが取得できれば、Google Cloud Platformでの作業はひとまず完了です。
まとめ
Pythonを使って、Google APIの中のGmailを使う方法の前編として、Google Cloud Platformで認証情報を取得するまでの流れを解説しました。
次回は、実際に認証情報の使いながら、PythonでGmailの情報を取得していきます。
ぜひ、以下の記事も引き続き参考にしてください。
![](https://clione33.online/wp-content/uploads/2021/04/210918_gas_python_gmailapi02-300x158.png)
![](https://clione33.online/wp-content/uploads/2021/04/210918_gas_python_gmailapi02-300x158.png)
コメント