読者です 読者をやめる 読者になる 読者になる

エンジニアがお金について本気出して考えてみた

株式投資や節約などについて書きます

企業のIR情報をGoogle Apps Scriptでクロールしてみる

IT 株式投資
スポンサーリンク

僕は本業が一応エンジニアなので、隙間時間に簡単なプログラムを書くことがあります。

株式投資を始めてから企業のIR情報のページを見ることが多くなったのですが、IRのページでは四半期ごとの発表に限らず細かいニュースも発表されることが多く、いずれも価格変動の材料になり得るものであるためあまり見逃したくありません。

そこで、IRのページのURLを登録して、更新があったらメールで通知するプログラムをGoogle Apps Scriptで書いてみました。

var urls = {
  "http://www.kigyou.ne.jp/news/ir/": "企業名"
};

function crawl() {
  var cache = CacheService.getScriptCache();

  Object.keys(urls).forEach(function(url) {
    var response = UrlFetchApp.fetch(url, {});
    var content = response.getContentText();
    Logger.log("ur: %s, response: %s", url, content);
    
    var cachedContent = cache.get(url); 
    Logger.log("cached content: %s", cachedContent);
    
    if ( cachedContent === null ) {
      Logger.log("put cache");
      cache.put(url, content);
    }
    else if ( content !== cachedContent ) {
      Logger.log("found diff, send email");
      sendMail(urls[url], url);
    }
  });
}

function sendMail(company, url) {
  MailApp.sendEmail("mymailaddress@gmail.com", company + "のIRが更新されたっぽいよ", url)
}

企業名、URL、メールアドレスなどの値はサンプルです。

Google Apps Scriptはあまり有名な技術ではありませんが、Google DriveのSpreadSheetをカスタマイズできたりと、いわゆるExcelにおけるVBAのような使い方も出来ます。Google Appsを利用している会社に勤めているのであれば、勉強すれば業務効率化に繋げることが出来るかもしれません。

いずれは、株式投資周りの情報収集にフォーカスしたAndroid/iPhoneアプリなども作ってみたいな…と妄想しています。