かずきち。の日記

サーバサイドエンジニアのつぶやき

GASを使ってさくっとinstagramのフォロワー推移を自動記録しよう!

instagramのフォロワー推移気になりますよね?

Twitterしかり、instagramのフォロワー推移は気になるものです。
あーフォロワー減っている…増えてる…と一喜一憂しても仕方ありません。
そこで、GAS(GoogleAppsScript)を使って、さくっとフォロワー推移の自動取得をしちゃいましょう。

function myFunction() {
  //instagramのフォロワー数を取得します
  var instagramId = 'kazukichi0914'
  var url = 'https://www.instagram.com/' + instagramId;
  var response = UrlFetchApp.fetch(url);
  var html = response.getContentText('UTF-8');
  var json = html.match(/window._sharedData = (.*?);<\/script>/)[1];
  var jsonData = JSON.parse(json);
  var full_name = jsonData['entry_data']['ProfilePage'][0]['graphql']['user']['full_name']
  var follows   = jsonData['entry_data']['ProfilePage'][0]['graphql']['user']['edge_follow']['count'];
  var followers = jsonData['entry_data']['ProfilePage'][0]['graphql']['user']['edge_followed_by']['count'];
  Logger.log(full_name);
  Logger.log(follows);
  Logger.log(followers);  
}

ここまでのソースでサクッとinstagramのフォロワー数を取得します。
これだけだといちいち自分でプログラムを手動起動する必要があるので、めんどうです。
そこで、トリガーというものを設置します。

f:id:kazukichi_0914:20190602112706p:plain

トリガーとは何か?

トリガーというのはプログラミングコードを起動させる何らかの発火装置を作ることです。
例えば、「毎時何分にプログラミングソースを起動」とかその手のやつです。
自宅のパソコンでも可能なんですが、パソコンの電源をつけっぱなしにするという電気料金にやさしくない状態なので、プログラムの起動はGoogleさんにお任せします。

f:id:kazukichi_0914:20190602113014p:plain

GSuite Developper Hubに行くと各プロジェクトの横に「鉛筆マーク」と「︙」がありますよね?
そこの︙を押します。

するとプロジェクトの詳細が閲覧できます。

今までこのプロジェクトを何回実行したの?
何をトリガーにして自動実行させるの?
どんなエラーが出たの?とかがわかるやつです。

f:id:kazukichi_0914:20190602113014p:plain

ここにinstagramフォロワー推移のソースをペタッと貼り付けて、あとは時間を1日1回あたりにして、特定のスプレッドシートにバシバシ記入してけばいいわけです。
そうするとこの写真がフォロワー数増加に影響していそうだなんて統計が取れるわけです。