starwish’s diary

GASで日曜プログラミング-天気予報配信-

GASが非常に便利だということが分かったので、今回は天気予報を自分に配信してみた。
こんなコードをGASに登録し、GASのトリガで毎日午後6時に実行させると、翌日の天気予報が配信されるという寸法である。

function myFunction() {
  var url = "http://www.jma.go.jp/jp/yoho/320.html";
  var response = UrlFetchApp.fetch(url);
  var data = response.getContentText();
  var ps1 = Parser.data(data)
  var ps2 = ps1.from('<div style="float: left">東部</div>').to('<th class="weather">\n明後日').build()
  var ps3 = Parser.data(ps2).from('<th class="weather">\n明日').to('</table></div></td>').build()
  var ps4 = Parser.data(ps3)
  var info = ps4.from('<td class="info">').to('</td>').build();
  var prob = ps4.from('<td align="right">').to('</td>').iterate()
  var result = "神奈川県東部 " + info+prob
  MailApp.sendEmail('xxxx@yyyy', '天気予報', result);
}

ParserというのはIvan Kutilという方が公開してくれているGASのライブラリで、面倒なテキスト抽出作業を簡単にやってくれる。
ライブラリを使うにはスクリプトIDが必要なのだが、他の人が公開しているIDを知るすべはないので、googleさんに探してもらった。Parserの場合はM1lugvAXKKtUxn_vdAG9JZleS6DrsjUUVである。