Python で Gmail API を使用してメールの送受信と添付ファイルの操作を行うためのサンプルプロジェクトです。
- 認証トークンの取得 (
get_token.py) - メールの送信 (
send_mail.py) - 添付ファイル付きメールの送信 (
send_attachment.py) - メールの取得と添付ファイルのダウンロード (
get_mails.py)
- Google Cloud Console にアクセス
- 新しいプロジェクトを作成、または既存のプロジェクトを選択
- Gmail API を有効化
- 認証情報(OAuth 2.0 クライアント ID)を作成
- クライアントシークレットファイルをダウンロードし、
data/フォルダに配置
プロジェクトルートに .env ファイルを作成し、送信者のメールアドレスを設定:
EMAIL=your-email@gmail.com必要なパッケージをインストール:
pip install -e .または、個別にインストール:
pip install google-api-python-client google-auth-httplib2 google-auth-oauthlib python-dotenv最初に認証トークンを取得します:
python get_token.pyブラウザが開き、Google アカウントでの認証を求められます。認証が完了すると data/token.json ファイルが生成されます。
シンプルなテキストメールを送信:
python send_mail.py添付ファイル付きのメールを送信(事前に data/attachment.png を配置):
python send_attachment.py自分宛のメールを取得し、添付ファイルがあればダウンロード:
python get_mails.pygmail-api-tutorial/
├── get_mails.py # メール取得・添付ファイルダウンロード
├── get_token.py # 認証トークン取得
├── send_attachment.py # 添付ファイル付きメール送信
├── send_mail.py # シンプルなメール送信
├── pyproject.toml # プロジェクト設定・依存関係
├── README.md # このファイル
├── .env # 環境変数(要作成)
└── data/
├── client_secret_*.json # Google認証情報(要配置)
├── token.json # 認証トークン(自動生成)
└── attachment.png # 送信用添付ファイル(要配置)
- 初回実行時は
get_token.pyを実行して認証を完了してください - Gmail API には使用制限があります
- セキュリティのため、認証情報ファイルは適切に管理してください
.envファイルとdata/フォルダ内のファイルは Git にコミットしないでください
このプロジェクトでは以下のスコープを使用します:
https://mail.google.com/- Gmail の完全なアクセス権限
data/token.jsonを削除get_token.pyを再実行して再認証
- Gmail API の使用制限を確認し、時間を置いてから再試行してください