GMailを大量に削除する方法

Web版のGmailはメールを一括して削除するときに最大でも1回につき100件までしか削除できません。そこでGmailのAPIを使って大量のメールを一括削除するPythonスクリプトを作りました。

前準備

Pythonの準備

 まずは前準備としてPythonがインストールされていることと、さらに以下のモジュールを追加でインストールします。

Googleの準備

Google Cloud ConsoleにアクセスしてGmail APIを有効にします。
1.Google Cloud Console にアクセス
2.新しいプロジェクトを作成
3.「APIとサービス」➔「APIライブラリ」で「Gmail API」を有効にする。
4.「OAuth 2.0 クライアントID」を作成(アプリの種類 ➔「デスクトップアプリ」を選択。
5.「APIとサービス」➔「認証情報」➔「OAuth 2.0 クライアント ID」の「⏬OAuthクライアントをダウロード」ボタンを押下し、ファイル名を「credentials.json」としてファイルをダウンロード。
6.ダウンロードしたファイルをPythonスクリプトと同じフォルダに置く。

プログラムをダウンロードして実行

ダウンロード

 GitHubにプログラムをアップしました。下記のサイトにアクセスしてPythonのプログラムをダウンロードしてください、

初回実行

 Gmail削除プログラムを初回に実行すると、Googleからの権限認証のための画面が開きますので、「今日共有する際に、Googleアカウントのデータに対する継続的なアクセス権をgmail delete(Pythonのスクリプト名)に付与します」のチェックボックスにチェックを入れて、続行ボタンを押下します。

コマンドの使い方

使い方

python gmail-delete.py [display|delete|count|dispquery] [query=’検索条件’]

コマンドラインのパラメータ

display = 対象のメールを表示
delete = メールを削除
count = 対象のメールの数を表示
dispquery = クエリ文字列を表示して終了
query = クエリー文字列

クエリー文字列の例 ① 指定日以前

 in:anywhere before:2025/01/01

 in:anywhere = ゴミ箱とスパムは除くすべてのフォルダ
 before:2025/01/01 = 指定日付以前

クエリー文字列の例 ② 指定日以降

 in:anywhere after:2025/01/01

 in:anywhere = ゴミ箱とスパムは除くすべてのフォルダ
 after:2025/01/01 = 指定日付以降

タイトルとURLをコピーしました