(license)みなさん、こんにちは!タカハシ(@ntakahashi0505)です。Scriptを使ってチャットワークに色々と送るシリーズです。前回は当日の予定をGoogleカレンダーから取得してチャットワークに送る方法についてお伝えしました。Scriptを使ってチャットワークに色々と送ることができます。Googleカレンダーから当日の予定を取得してチャットワークに送る方法についてお伝えしたいと思います。tonari-it.com2016.02.23朝に色々とマイチャットに送られるようになってきてとても便利なのですが、他にも知りたいことありますね。APIという方法を使って入手して、それを加工してチャットワークに送るというのを目標に何回かに分けてお伝えしたいと思います。APIからJSON形式の天気予報データを取得してくる方法までをお伝えします。Interface」の略であるコンピュータプログラム(ソフトウェア)の機能や管理するデータなどを、外部の他のプログラムから呼び出して利用するための手順やデータ形式などを定めた規約のこと。APIなので、Web版のAPIですね。簡単に言うと指定のURLにアクセスすることで、配列や辞書型のようなデータを返してくれる仕組みと言えます。APIを利用するためには、そのデータ元のサービスがそれぞれでAPIを提供してくれる必要がありますが、実は現在とっても多くのサービスがAPIを提供していまして、様々なデータを取得することができるんです。うう、いくつかはすぐにでも利用したいですね...。APIから受け取ったデータはどんな形をしているのでしょうか?受け取るデータの方式はXML、JSONが代表的です。XMLとはXML形式はこんな感じです。value="2015-06-30T08:36:14"></current>HTMLに似ていますね。Language」の略で「タグ」でコンテンツを囲んで記述する形式です。JSONとは一方でJSON形式を見てみましょうか。ちなみに「ジェイソン」と読みます。stations","main":{"temp":293.25,"pressure":1019,"humidity":83,"temp_min":289.82,"temp_max":295.37},"wind":{"speed":5.1,"deg":150},"clouds":{"all":75},"rain":{"3h":3},"dt":1435658272,"sys":{"type":1,"id":8166,"message":0.0166,"country":"AU","sunrise":1435610796,"sunset":1435650870},"id":2172797,"name":"Cairns","cod":200}...わかりやすいような、わかりにくいような...。Notation」の略で、JavaScriptにおけるオブジェクトの表記法を応用したデータ形式です。...ん?JavaScript?実際にJSONはJavaScriptでの扱いが簡単なため、WebサービスやAjaxなどでプログラム間でのデータ交換フォーマットとして多用されている。プログラミング言語でJSONを簡単扱えるようにする追加機能などが公開されている。ScriptもベースはJavaScriptですし、攻略しておいて損はなさそうです。今回は天気予報を取得したいのですが、天気情報のAPIを提供するサービスはいくつかあります。APIを利用して、天気予報を取得してみたいと思います。LWWS)とRSSフィード(RSS2.0)を中心としたデータを提供しています。APIからデータを取得するには指定のURLにアクセスする、とお伝えしました。livedoor天気からデータを取得する場合、専用のアドレスが用意されていまして、ベースとしてはhttp://weather.livedoor.com/forecast/webservice/json/v1というURLを使います。これに都市別のパラメータであるCityIDを「?city=XXXXXX」という書き方で加えます。東京のCityIDは「130010」ですからhttp://weather.livedoor.com/forecast/webservice/json/v1?city=130010とすればOKです。APIアドレスにリクエストをする場合はUrlFetchApp.fetch(URL)というメソッドを使います。JSONはテキストデータと言ってましたから、以下のようなスクリプトを作ってみました。//URL+cityIDLogger.log(response);}ログにいい感じのJSONデータが出力されることを期待して実行をしてみます。