【AdSenseユーザー必見】毎日の収益をメールで通知する
こんにちは、ブロガーの頼れるお兄さん(願望) まさぱぱ(@NeoMasaPapa)です。
皆さん、『Google AdSense』の収益ってどのくらいの頻度で確認されていますか?自分は結構気になって、パソコンをつける度に確認してました。
頻繁に確認しても増える訳ではないのに…
ブラウザにログイン情報を残さないタイプの人間なので、毎回『IDとPASS入力』『認証』をするのが手間だったんですよね。そんな手間をGoogleが解決してくれました。結論から言うと、『毎日決められた時間帯にその日の収益をメールで通知する』のです。
Googleユーザーであれば誰もが使える『Google Apps Script』を利用して、ツールを自作しちゃいましょう。プログラミングなんてできない!という方も大丈夫です。コードを公開するので、手順通りに作業をすれば使用できます。
実際にチャレンジしてみて、便利!と思った方はシェア等で応援していただけると嬉しいです。
Google Apps Scriptって何
『Google Apps Script』は略称GAS(ガス)といい、主にGoogleのサービスを自動化するスクリプト言語です。
Googleアカウントとブラウザ(ネット環境)があれば無料で利用可能で、Webベースの開発ツールなので環境を準備する必要もありません。JavaScriptがもとになっているため汎用性が高く、プログラミング初心者が始めやすい言語と言われています。
Twitter、Slack、LINE等、Google以外のサービスとも連携が可能で、プライベートだけでなく仕事の業務効率化にも役立ちます。
AdSenseユーザーならGoogleアカウント作成済みなので、すぐに利用できます。
事前準備(Google AdSense情報の確認)
今回作成するツールから『Google AdSense』の情報を取得する際、『パブリッシャーID』が必要になります。
先に『パブリッシャーID』を表示させておくと後の作業がスムーズにいきます。
『アカウント』-『アカウント情報』で表示される『pub-』から始まるIDを確認します
この画面を別タブで開いておくか、IDをメモ帳等へコピペしておくと便利です。
Google Apps Script 作業手順
では、『Google Apps Script』を使ってツール作成をしていきましょう。
『Google Apps Script』のプロジェクトを作成するため、『Google Drive』を開きます。
ログアウトしている場合は、再度ご自身のGoogleアカウントでログインしてください。
他のプロジェクトと区別するため、分かりやすいタイトルに変更します。
『Google AdSense』との連携をするため、サービスを追加します。
下図の通り、『AdSense Management API』の『バージョン v2』を選択します。『ID』は任意ですが、デフォルトの『AdSense』をオススメします。
STEP7の『ID』で設定した名称が表示されていればOKです。
デフォルトで入力されているコードを全選択し、以下のコードに書き換えます。
function GetAdSenseData() {
/***********************************************************************/
// 自身の環境に合わせて設定を変更します
const pubId ='pub-1234567890123456' // パブリッシャーID
const mailTo = 'xxxxxxxxxxxxxxxxxx@gmail.com' // 送信先メールアドレス
const subject = 'AdSenseレポート'; // 件名
/***********************************************************************/
// 変数をセット
let adsenseAccount = 'accounts/' + pubId;
let adsenseDimensionId = 'ca-' + pubId;
let today = new Date();
let metrics = ['ESTIMATED_EARNINGS', 'PAGE_VIEWS', 'INDIVIDUAL_AD_IMPRESSIONS', 'CLICKS']
let report = AdSense.Accounts.Reports.generate(adsenseAccount, {
filters: ['AD_CLIENT_ID==' + adsenseDimensionId],
metrics: metrics,
dimensions: ['DATE'],
...dateToJson('startDate', today),
...dateToJson('endDate', today),
orderBy: ['+DATE']
})
if (report.rows) {
let estimatedEarnings = Number(report.rows[0].cells[1].value);
let pageViews = Number(report.rows[0].cells[2].value);
let impressions = Number(report.rows[0].cells[3].value);
let clicks = Number(report.rows[0].cells[4].value);
let body = "\n【本日のAdSenseレポート】\n\n";
body = body + "推定収益額:" + estimatedEarnings.toLocaleString() + "円\n\n";
body = body + "ページビュー:" + pageViews.toLocaleString() + "\n\n";
body = body + "広告表示回数:" + impressions.toLocaleString() + "\n\n";
body = body + "クリック数:" + clicks.toLocaleString();
// 件名に日付を付与
let formatDate = Utilities.formatDate(today,"JST", "yyyy/MM/dd");
let title = subject + "(" + formatDate + ")";
GmailApp.sendEmail(mailTo, title, body);
}
}
function dateToJson(param, value) {
return {
[param + '.year']: value.getFullYear(),
[param + '.month']: value.getMonth() + 1,
[param + '.day']: value.getDate()
};
}
できるだけシンプルに書いたつもりです…
以下のコード箇所はご自身の環境に合わせて内容を変更します。
/***********************************************************************/
// 自身の環境に合わせて設定を変更します
const pubId ='pub-1234567890123456' // パブリッシャーID
const mailTo = 'xxxxxxxxxxxxxxxxxx@gmail.com' // 送信先メールアドレス
const subject = 'AdSenseレポート'; // 件名
/***********************************************************************/
『パブリッシャーID』は『事前準備』で確認していただいたIDです。『送信先メールアドレス』はメールを受け取りたいアドレス、『件名』はメールに付与するタイトルです。自由に変更してください。
設定サンプル
項目 | 設定内容 |
---|---|
パブリッシャーID | pub-9876543210987654 |
送信先メールアドレス | abcdefg@gmail.com |
件名 | AdSense収益報告 |
この内容を反映させる場合、以下のようにコードを変更してください。
/***********************************************************************/
// 自身の環境に合わせて設定を変更します
const pubId ='pub-9876543210987654' // パブリッシャーID
const mailTo = 'xxxxxxxxxxxxxxxxxx@gmail.com' // 送信先メールアドレス
const subject = 'AdSenseレポート'; // 件名
/***********************************************************************/
コードの変更が完了したら、実際に動くかテストを行います。下図、赤線部分を確認してから『実行』ボタンをクリックします。
プログラムの初回実行時に権限の確認画面が表示されます。
権限の許可設定を行うため、再度Googleへのログインを求められます。現在ログインしているアカウントを再選択してください。
メール送信のために『Gmail』、収益確認のために『Google AdSense』を使用するのですがプライベートな情報なのでアクセスして良いかを細かく確認されます。『安全なページに戻る』ボタンをクリックすると許可したことにならず、スクリプトの実行はされません。
『AdSenseメール通知』の部分はSTEP5で設定したタイトルが表示されますので、下図と異なる場合があります。
先ほどお伝えした通り、今回のスクリプトは『Gmail』と『Google AdSense』へアクセスを行って処理を実行します。内容を確認して、『許可』をクリックしてください。スクリプトが実行されます。
STEP10で設定したメールアドレスにメールが届いているか確認します。下図のようなメールが届けばテスト完了です。
こんなメールが毎日自動で届きます!便利!!
定刻になったらメールを配信するための設定を『トリガー』から行います。『トリガー』というのはスクリプトが動作するきっかけを意味します。
基本的には下図の通り設定を行えばOKですが、『時刻を選択』部分についてはメールを届けて欲しい時間帯に変更してもかまいません。設定した時間帯までの推定収益が報告されるので、1日の終わり頃を指定するのがオススメです。なお、選択した時間帯のどこかでメールが送信されます。細かな時間設定はできません。
赤枠の通り、トリガーが追加されたことを確認します。
これですべての設定が完了です。
無事メールは届いたでしょうか?
スクリプトの注意事項
スクリプト自体は非常にシンプルですが、ご自身での改変や操作等で損害(金銭的・物理的損害)が発生しても責任は負いかねます。理解の上、利用をお願いします。
また、メールで通知される内容はあくまでも日々の概算収益となります。この辺りは『Google AdSense』のレポートも同じで、収益が確定する翌月初めまでは日々変更・訂正が入ります。
まとめ
スクリプトはいかがでしたか?プログラミング初心者の方でも簡単に作業できたのではないでしょうか。
私は仕事終わりにメールが届くように設定しているので、推定収益を見てニヤニヤしながら帰宅しています。といっても、収益はまだまだのブロガーですが…
今回使用した『Google Apps Script』は非常に奥深く、いろんなことができます。是非、カスタマイズをして自分好みの情報を取得してみてください。個人的にはメール報告だけでなく、LINE報告にチャレンジしたいなと思っています。
便利になった!ここがいまひとつ!といった感想があれば、是非お寄せください。
皆さんの声が励みになります!!
コメント