【GAS】GoogleAppScriptをはじめよう
GoogleAppScriptとは
Google Apps Script(GAS)はGoogleが提供する11のサービスをクラウド上でスクリプトを実行することで操作できるサービスです。
言語はJavaScriptをベースとしています。
例えば一定時間ごとにデータを集計したり、SNSに投稿するBotを作ったり、GoogleSpleatSheetを編集したりなどが可能です。
以下のGoogleの機能と標準で連携することができるのでいろいろな使い方が可能です。
GASを用意しよう
GoogleDriveに入って右クリックで「その他 > Google Apps Script」を選択。
※その他に無い場合はアプリを追加で探してみてください。
GASを使ってみよう
上のアプリを追加で作成された無題のプロジェクトです。
左上の「無題のプロジェクト」の部分をクリックすることでプロジェクト名を変更できます。
左の「コード.gs」の部分にgsファイルが並びます。
ファイル名の右の▽をクリックすることでファイル名を変更したり、ファイルを削除、コピーできます。
とりあえず動かそう
プロジェクト名、ファイル名、メソッド名を「test」に変えてみました。
function test() { Logger.log("Hello World!"); }
Logger.log(string)でログを表示します。
ボタンをクリックで実行されます。
初回実行時のみ、Googleアカウントの認証が必要です。
実行後「⌘+Enter(Mac)」でログが表示されます。
行数の部分をクリックすることでブレークポイントを設定できます。
ボタンを押すことでブレークポイントで停止してくれます。
2017/07/25現在ではブレークポイントで止まってくれるのは実行開始したファイル内だけのようです。
別のファイルのブレークポイントで止めたい場合は、メソッドから別のファイルのメソッドを呼び出しているところで一度止めてから、ステップインすることで呼び出し先の別ファイルのメソッドへ移動できます。
別のファイルに移動した後であればそのファイルのブレークポイントに止まってくれました。
他に何ができるかは以下を参考にどうぞ
Calendar Service | Apps Script | Google Developers
トリガーの設定
定期的に集計などをしたい場合、その都度再生ボタンを押すのは面倒です。
トリガーとは再生ボタンを押さなくても一定時間ごとに指定したメソッドを実行してくれます。
ボタンを押して、トリガーを設定してください。
トリガーを設定するウィンドウが表示されました。
最初は青文字のリンクを押すことでトリガーを追加できます。
実行の部分はメソッド名が入ります。ここではtestを選んでいます。
イベントには実行周期を登録します。
「特定の日時」「月タイマー」「週タイマー」「日タイマー」「時タイマー」「分タイマー」から選べます。
また、「新しいトリガーを追加」で新しいトリガーを追加できます。
時タイマーで設定して1時間ごとにはなりますが、0:16→1:15のように0分ぴったりでは無いので注意です。
ぴったりの時間に処理したい場合は以下のように毎分に設定し、NowMin(分)が0であることを確認すれば間違いないです。
これで毎時0分ぴったりに処理することになります。
var Nowymdhms = new Date(); var NowYear = Nowymdhms.getYear(); var NowMon = Nowymdhms.getMonth() + 1; var NowDay = Nowymdhms.getDate(); var NowHour = Nowymdhms.getHours(); var NowMin = Nowymdhms.getMinutes(); if (NowMin == 0) { }