お久しぶりです。個人的に大きなニュースが飛び込んできたので記事にします。
Google Feed API が403エラーを吐くようになった
このページにたどり着いている方はもうご存知だと思いますが、Google Feed API が403エラーを吐くようになりました。
find と load の両方で、次のようになります。
1 |
{"responseData": null, "responseDetails": "Suspected Terms of Service Abuse. Please see http://code.google.com/apis/errors", "responseStatus": 403} |
1 |
{"responseData": null, "responseDetails": "This API is no longer available.", "responseStatus": 403} |
これは…終焉でしょうか…
Google スプレッドシートで代替可能との情報…
Google スプレッドシートには、スプレッドシートの情報を JSON でウェブに公開してくれる機能がありますが、それを利用した Google Feed API に代わる RSS の JSON 取得方法が Twitter などで話題になっています。
クロノス・クラウン – 「Google Feed API」代替として「Googleスプレッドシート」を使う方法 (外部サイト)
こちらでは、はてなブログの新着エントリの RSS を Google スプレッドシートを経由して JSON 取得する方法が紹介されています。
今回は、この記事を参考(というかほぼ引用な気も…)にして、はてなブログ以外で多く使用できる RSS to JSON 変換シートの作成について紹介します。
変換シートの作成
Google スプレッドシートを新規作成する
とりあえず、タイトルには「RSS を JSON に変換」と入れておきます。
続いて、画面上部の「ツール」から「スプリクト エディタ…」をクリックします。
スクリプトを作成する
こちらも、タイトルとして「get_rss」としておきます。
画面のエディタには、
1 2 3 |
function myFunction() { } |
と表示されているかと思いますが、それを以下のように書き換えます。
(削除 & コピペで OK です)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 |
/* get_rss 参考 Web サイト クロノス・クラウン - 「Google Feed API」代替として「Googleスプレッドシート」を使う方法 http://crocro.com/news/20151202153801.html 2015年12月2日 午後11時00分 (日本標準時) 閲覧 */ function myFunction() { var url = "press.treastrain.jp/feed"; clear(); scraiping(url); } function clear() { var myActiveSpreadSheet = SpreadsheetApp.getActiveSpreadsheet(); var myActiveSheet = myActiveSpreadSheet.getSheets()[0]; myActiveSheet.clear(); } function scraiping(url) { var myActiveSpreadSheet = SpreadsheetApp.getActiveSpreadsheet(); var myActiveSheet = myActiveSpreadSheet.getSheets()[0]; var response = UrlFetchApp.fetch(url); var myRegexp = /([\s\S]*?)<\/item>/gi; var match = response.getContentText().match(myRegexp); for (var i in match) { var txt = match[i]; var ttl = ""; var url = ""; try { ttl = txt.match(/([\s\S]+?)<\/title>/)[1]; url = txt.match(/(.+?)<\/link>/)[1]; } catch(e) {} myActiveSheet.getRange(myActiveSheet.getLastRow()+1, 1).setValue(ttl); myActiveSheet.getRange(myActiveSheet.getLastRow(), 2).setValue(url); } } |
できたら、保存しましょう。
スクリプトの実行
続いて、「myFunction」の関数が選択された状態で、「実行」をクリックします。
(▶ のボタン、スクリーンショットを参考)
承認が必要だと言われるので、許可します。
許可すると、自動でスクリプトが実行されます。スプレッドシートを見てみると、タイトルと URL が取得できていることが分かります。
スクリプトの編集
さて、先ほど掲載したスクリプトは本 Web サイト、treastrain Press の RSS を取得し、スプレッドシートに表示するものでした。
このスクリプトを書き換えていきましょう。
まず、スクリプトのこの部分、「press.treastrain.jp/feed」と書かれている部分に、JSON に書き換えたい RSS の URL を入力します。
「”(ダブルクオーテーション)」を消さないように注意してください。
先ほどと同じ手順で「実行」し、スプレッドシートにタイトルと URL が表示されれば成功です。
——————–
スプレッドシートに何も表示されない場合はさらにスクリプトを編集する必要があります。
このスクリーンショット内の 26、34、35行目で RSS のタグを指定していますので、その部分を編集してください。
——————–
スクリプトの自動実行
このままではスクリプトは「実行」ボタンを押した時にしか実行されず、自動で RSS の取得は行わないので、自動で取得出来るように設定します。
「実行」ボタンのとなりにある「現在のプロジェクトのトリガー」ボタン(吹き出しの中に時計の針 のアイコン)をクリックします。
「トリガーが設定されていません。今すぐ追加するにはここをクリックしてください。」をクリックします。
時間などを設定します。例として、このようにしてみました。
Google のサーバーですから、高頻度にしても大丈夫でしょう……。
「保存」をクリックし、保存された瞬間から、RSS の自動取得が開始されます。
例の通りにトリガーを設定した場合、スプレッドシートを見てみると1分おきに内容が更新されていることが分かります。
変換シートを JSON で取得する
さて、スプレッドシートは完成したので、続いてこのスプレッドシートを JSON で取得出来るようにします。
ウェブに公開し、スプレッドシートのキーを取得する
スプレッドシートを Web に公開します。
「メニュー」から「ウェブに公開」を選択します。
URL が表示されるので、コピーします。
続いて、取得した URL の中からキーを取得します。
今回、例として取得した URL は
1 |
https://docs.google.com/spreadsheets/d/1_4v6XfqFYcB7GAF2Jps4l7EcVx2ngN5yqr-cLgxYFx4/pubhtml |
というものですが、URL の「1_4v6XfqFYcB7GAF2Jps4l7EcVx2ngN5yqr-cLgxYFx4」の部分がスプレッドシートのキーとなっています。
これをコピーしておきます。
JSON 取得用の URL を作る
Google スプレッドシートを JSON で取得する URL は、
https://spreadsheets.google.com/feeds/cells/ここにキーを入れる/od6/public/values?alt=json
です。今回の例の場合だと、
1 |
https://spreadsheets.google.com/feeds/cells/1_4v6XfqFYcB7GAF2Jps4l7EcVx2ngN5yqr-cLgxYFx4/od6/public/values?alt=json |
となります。
JSON ファイルを実際に表示してみると、こんな感じです。
1 |
{"version":"1.0","encoding":"UTF-8","feed":{"xmlns":"http://www.w3.org/2005/Atom","xmlns$openSearch":"http://a9.com/-/spec/opensearchrss/1.0/","xmlns$batch":"http://schemas.google.com/gdata/batch","xmlns$gs":"http://schemas.google.com/spreadsheets/2006","id":{"$t":"https://spreadsheets.google.com/feeds/cells/1_4v6XfqFYcB7GAF2Jps4l7EcVx2ngN5yqr-cLgxYFx4/od6/public/values"},"updated":{"$t":"2015-12-02T15:08:38.956Z"},"category":[{"scheme":"http://schemas.google.com/spreadsheets/2006","term":"http://schemas.google.com/spreadsheets/2006#cell"}],"title":{"type":"text","$t":"シート1"},"link":[{"rel":"alternate","type":"application/atom+xml","href":"https://docs.google.com/spreadsheets/d/1_4v6XfqFYcB7GAF2Jps4l7EcVx2ngN5yqr-cLgxYFx4/pubhtml"},{"rel":"http://schemas.google.com/g/2005#feed","type":"application/atom+xml","href":"https://spreadsheets.google.com/feeds/cells/1_4v6XfqFYcB7GAF2Jps4l7EcVx2ngN5yqr-cLgxYFx4/od6/public/values"},{"rel":"http://schemas.google.com/g/2005#post","type":"application/atom+xml","href":"https://spreadsheets.google.com/feeds/cells/1_4v6XfqFYcB7GAF2Jps4l7EcVx2ngN5yqr-cLgxYFx4/od6/public/values"},{"rel":"http://schemas.google.com/g/2005#batch","type":"application/atom+xml","href":"https://spreadsheets.google.com/feeds/cells/1_4v6XfqFYcB7GAF2Jps4l7EcVx2ngN5yqr-cLgxYFx4/od6/public/values/batch"},{"rel":"self","type":"application/atom+xml","href":"https://spreadsheets.google.com/feeds/cells/1_4v6XfqFYcB7GAF2Jps4l7EcVx2ngN5yqr-cLgxYFx4/od6/public/values?alt\u003djson"}],"author":[{"name":{"$t":"treastrain"},"email":{"$t":"treastrain@gmail.com"}}],"openSearch$totalResults":{"$t":"20"},"openSearch$startIndex":{"$t":"1"},"gs$rowCount":{"$t":"1001"},"gs$colCount":{"$t":"26"},"entry":[{"id":{"$t":"https://spreadsheets.google.com/feeds/cells/1_4v6XfqFYcB7GAF2Jps4l7EcVx2ngN5yqr-cLgxYFx4/od6/public/values/R1C1"},"updated":{"$t":"2015-12-02T15:08:38.956Z"},"category":[{"scheme":"http://schemas.google.com/spreadsheets/2006","term":"http://schemas.google.com/spreadsheets/2006#cell"}],"title":{"type":"text","$t":"A1"},"content":{"type":"text","$t":"Google Feed API が廃止されたかも"},"link":[{"rel":"self","type":"application/atom+xml","href":"https://spreadsheets.google.com/feeds/cells/1_4v6XfqFYcB7GAF2Jps4l7EcVx2ngN5yqr-cLgxYFx4/od6/public/values/R1C1"}],"gs$cell":{"row":"1","col":"1","$t":"Google Feed API が廃止されたかも"}},{"id":{"$t":"https://spreadsheets.google.com/feeds/cells/1_4v6XfqFYcB7GAF2Jps4l7EcVx2ngN5yqr-cLgxYFx4/od6/public/values/R1C2"},"updated":{"$t":"2015-12-02T15:08:38.956Z"},"category":[{"scheme":"http://schemas.google.com/spreadsheets/2006","term":"http://schemas.google.com/spreadsheets/2006#cell"}],"title":{"type":"text","$t":"B1"},"content":{"type":"text","$t":"http://press.treastrain.jp/abolition-of-google-feed-api/"},"link":[{"rel":"self","type":"application/atom+xml","href":"https://spreadsheets.google.com/feeds/cells/1_4v6XfqFYcB7GAF2Jps4l7EcVx2ngN5yqr-cLgxYFx4/od6/public/values/R1C2"}],"gs$cell":{"row":"1","col":"2","$t":"http://press.treastrain.jp/abolition-of-google-feed-api/"}},{"id":{"$t":"https://spreadsheets.google.com/feeds/cells/1_4v6XfqFYcB7GAF2Jps4l7EcVx2ngN5yqr-cLgxYFx4/od6/public/values/R2C1"},"updated":{"$t":"2015-12-02T15:08:38.956Z"},"category":[{"scheme":"http://schemas.google.com/spreadsheets/2006","term":"http://schemas.google.com/spreadsheets/2006#cell"}],"title":{"type":"text","$t":"A2"},"content":{"type":"text","$t":"私が欲しいスマートグラスとは"},"link":[{"rel":"self","type":"application/atom+xml","href":"https://spreadsheets.google.com/feeds/cells/1_4v6XfqFYcB7GAF2Jps4l7EcVx2ngN5yqr-cLgxYFx4/od6/public/values/R2C1"}],"gs$cell":{"row":"2","col":"1","$t":"私が欲しいスマートグラスとは"}},{"id":{"$t":"https://spreadsheets.google.com/feeds/cells/1_4v6XfqFYcB7GAF2Jps4l7EcVx2ngN5yqr-cLgxYFx4/od6/public/values/R2C2"},"updated":{"$t":"2015-12-02T15:08:38.956Z"},"category":[{"scheme":"http://schemas.google.com/spreadsheets/2006","term":"http://schemas.google.com/spreadsheets/2006#cell"}],"title":{"type":"text","$t":"B2"},"content":{"type":"text","$t":"http://press.treastrain.jp/the-smart-glass-i-want/"},"link":[{"rel":"self","type":"application/atom+xml","href":"https://spreadsheets.google.com/feeds/cells/1_4v6XfqFYcB7GAF2Jps4l7EcVx2ngN5yqr-cLgxYFx4/od6/public/values/R2C2"}],"gs$cell":{"row":"2","col":"2","$t":"http://press.treastrain.jp/the-smart-glass-i-want/"}},{"id":{"$t":"https://spreadsheets.google.com/feeds/cells/1_4v6XfqFYcB7GAF2Jps4l7EcVx2ngN5yqr-cLgxYFx4/od6/public/values/R3C1"},"updated":{"$t":"2015-12-02T15:08:38.956Z"},"category":[{"scheme":"http://schemas.google.com/spreadsheets/2006","term":"http://schemas.google.com/spreadsheets/2006#cell"}],"title":{"type":"text","$t":"A3"},"content":{"type":"text","$t":"Belkin Charge Dock for iPhone and Apple Watch を購入! レビューします"},"link":[{"rel":"self","type":"application/atom+xml","href":"https://spreadsheets.google.com/feeds/cells/1_4v6XfqFYcB7GAF2Jps4l7EcVx2ngN5yqr-cLgxYFx4/od6/public/values/R3C1"}],"gs$cell":{"row":"3","col":"1","$t":"Belkin Charge Dock for iPhone and Apple Watch を購入! レビューします"}},{"id":{"$t":"https://spreadsheets.google.com/feeds/cells/1_4v6XfqFYcB7GAF2Jps4l7EcVx2ngN5yqr-cLgxYFx4/od6/public/values/R3C2"},"updated":{"$t":"2015-12-02T15:08:38.956Z"},"category":[{"scheme":"http://schemas.google.com/spreadsheets/2006","term":"http://schemas.google.com/spreadsheets/2006#cell"}],"title":{"type":"text","$t":"B3"},"content":{"type":"text","$t":"http://press.treastrain.jp/review-belkin-charge-dock-for-iphone-and-apple-watch/"},"link":[{"rel":"self","type":"application/atom+xml","href":"https://spreadsheets.google.com/feeds/cells/1_4v6XfqFYcB7GAF2Jps4l7EcVx2ngN5yqr-cLgxYFx4/od6/public/values/R3C2"}],"gs$cell":{"row":"3","col":"2","$t":"http://press.treastrain.jp/review-belkin-charge-dock-for-iphone-and-apple-watch/"}},{"id":{"$t":"https://spreadsheets.google.com/feeds/cells/1_4v6XfqFYcB7GAF2Jps4l7EcVx2ngN5yqr-cLgxYFx4/od6/public/values/R4C1"},"updated":{"$t":"2015-12-02T15:08:38.956Z"},"category":[{"scheme":"http://schemas.google.com/spreadsheets/2006","term":"http://schemas.google.com/spreadsheets/2006#cell"}],"title":{"type":"text","$t":"A4"},"content":{"type":"text","$t":"新しい Magic Keyboard は バタフライ構造?"},"link":[{"rel":"self","type":"application/atom+xml","href":"https://spreadsheets.google.com/feeds/cells/1_4v6XfqFYcB7GAF2Jps4l7EcVx2ngN5yqr-cLgxYFx4/od6/public/values/R4C1"}],"gs$cell":{"row":"4","col":"1","$t":"新しい Magic Keyboard は バタフライ構造?"}},{"id":{"$t":"https://spreadsheets.google.com/feeds/cells/1_4v6XfqFYcB7GAF2Jps4l7EcVx2ngN5yqr-cLgxYFx4/od6/public/values/R4C2"},"updated":{"$t":"2015-12-02T15:08:38.956Z"},"category":[{"scheme":"http://schemas.google.com/spreadsheets/2006","term":"http://schemas.google.com/spreadsheets/2006#cell"}],"title":{"type":"text","$t":"B4"},"content":{"type":"text","$t":"http://press.treastrain.jp/the-new-magic-keyboard-butterfly-structure/"},"link":[{"rel":"self","type":"application/atom+xml","href":"https://spreadsheets.google.com/feeds/cells/1_4v6XfqFYcB7GAF2Jps4l7EcVx2ngN5yqr-cLgxYFx4/od6/public/values/R4C2"}],"gs$cell":{"row":"4","col":"2","$t":"http://press.treastrain.jp/the-new-magic-keyboard-butterfly-structure/"}},{"id":{"$t":"https://spreadsheets.google.com/feeds/cells/1_4v6XfqFYcB7GAF2Jps4l7EcVx2ngN5yqr-cLgxYFx4/od6/public/values/R5C1"},"updated":{"$t":"2015-12-02T15:08:38.956Z"},"category":[{"scheme":"http://schemas.google.com/spreadsheets/2006","term":"http://schemas.google.com/spreadsheets/2006#cell"}],"title":{"type":"text","$t":"A5"},"content":{"type":"text","$t":"Apple Music を iOS デバイスで解約する方法"},"link":[{"rel":"self","type":"application/atom+xml","href":"https://spreadsheets.google.com/feeds/cells/1_4v6XfqFYcB7GAF2Jps4l7EcVx2ngN5yqr-cLgxYFx4/od6/public/values/R5C1"}],"gs$cell":{"row":"5","col":"1","$t":"Apple Music を iOS デバイスで解約する方法"}},{"id":{"$t":"https://spreadsheets.google.com/feeds/cells/1_4v6XfqFYcB7GAF2Jps4l7EcVx2ngN5yqr-cLgxYFx4/od6/public/values/R5C2"},"updated":{"$t":"2015-12-02T15:08:38.956Z"},"category":[{"scheme":"http://schemas.google.com/spreadsheets/2006","term":"http://schemas.google.com/spreadsheets/2006#cell"}],"title":{"type":"text","$t":"B5"},"content":{"type":"text","$t":"http://press.treastrain.jp/how-to-cancel-the-apple-music-in-ios-devices/"},"link":[{"rel":"self","type":"application/atom+xml","href":"https://spreadsheets.google.com/feeds/cells/1_4v6XfqFYcB7GAF2Jps4l7EcVx2ngN5yqr-cLgxYFx4/od6/public/values/R5C2"}],"gs$cell":{"row":"5","col":"2","$t":"http://press.treastrain.jp/how-to-cancel-the-apple-music-in-ios-devices/"}},{"id":{"$t":"https://spreadsheets.google.com/feeds/cells/1_4v6XfqFYcB7GAF2Jps4l7EcVx2ngN5yqr-cLgxYFx4/od6/public/values/R6C1"},"updated":{"$t":"2015-12-02T15:08:38.956Z"},"category":[{"scheme":"http://schemas.google.com/spreadsheets/2006","term":"http://schemas.google.com/spreadsheets/2006#cell"}],"title":{"type":"text","$t":"A6"},"content":{"type":"text","$t":"Apple のレザーケースに気をつけろ"},"link":[{"rel":"self","type":"application/atom+xml","href":"https://spreadsheets.google.com/feeds/cells/1_4v6XfqFYcB7GAF2Jps4l7EcVx2ngN5yqr-cLgxYFx4/od6/public/values/R6C1"}],"gs$cell":{"row":"6","col":"1","$t":"Apple のレザーケースに気をつけろ"}},{"id":{"$t":"https://spreadsheets.google.com/feeds/cells/1_4v6XfqFYcB7GAF2Jps4l7EcVx2ngN5yqr-cLgxYFx4/od6/public/values/R6C2"},"updated":{"$t":"2015-12-02T15:08:38.956Z"},"category":[{"scheme":"http://schemas.google.com/spreadsheets/2006","term":"http://schemas.google.com/spreadsheets/2006#cell"}],"title":{"type":"text","$t":"B6"},"content":{"type":"text","$t":"http://press.treastrain.jp/watch-out-for-apple-leather-case/"},"link":[{"rel":"self","type":"application/atom+xml","href":"https://spreadsheets.google.com/feeds/cells/1_4v6XfqFYcB7GAF2Jps4l7EcVx2ngN5yqr-cLgxYFx4/od6/public/values/R6C2"}],"gs$cell":{"row":"6","col":"2","$t":"http://press.treastrain.jp/watch-out-for-apple-leather-case/"}},{"id":{"$t":"https://spreadsheets.google.com/feeds/cells/1_4v6XfqFYcB7GAF2Jps4l7EcVx2ngN5yqr-cLgxYFx4/od6/public/values/R7C1"},"updated":{"$t":"2015-12-02T15:08:38.956Z"},"category":[{"scheme":"http://schemas.google.com/spreadsheets/2006","term":"http://schemas.google.com/spreadsheets/2006#cell"}],"title":{"type":"text","$t":"A7"},"content":{"type":"text","$t":"PC を使って iOS を素早くアップデートする方法"},"link":[{"rel":"self","type":"application/atom+xml","href":"https://spreadsheets.google.com/feeds/cells/1_4v6XfqFYcB7GAF2Jps4l7EcVx2ngN5yqr-cLgxYFx4/od6/public/values/R7C1"}],"gs$cell":{"row":"7","col":"1","$t":"PC を使って iOS を素早くアップデートする方法"}},{"id":{"$t":"https://spreadsheets.google.com/feeds/cells/1_4v6XfqFYcB7GAF2Jps4l7EcVx2ngN5yqr-cLgxYFx4/od6/public/values/R7C2"},"updated":{"$t":"2015-12-02T15:08:38.956Z"},"category":[{"scheme":"http://schemas.google.com/spreadsheets/2006","term":"http://schemas.google.com/spreadsheets/2006#cell"}],"title":{"type":"text","$t":"B7"},"content":{"type":"text","$t":"http://press.treastrain.jp/how-to-quickly-update-the-ios-using-the-pc/"},"link":[{"rel":"self","type":"application/atom+xml","href":"https://spreadsheets.google.com/feeds/cells/1_4v6XfqFYcB7GAF2Jps4l7EcVx2ngN5yqr-cLgxYFx4/od6/public/values/R7C2"}],"gs$cell":{"row":"7","col":"2","$t":"http://press.treastrain.jp/how-to-quickly-update-the-ios-using-the-pc/"}},{"id":{"$t":"https://spreadsheets.google.com/feeds/cells/1_4v6XfqFYcB7GAF2Jps4l7EcVx2ngN5yqr-cLgxYFx4/od6/public/values/R8C1"},"updated":{"$t":"2015-12-02T15:08:38.956Z"},"category":[{"scheme":"http://schemas.google.com/spreadsheets/2006","term":"http://schemas.google.com/spreadsheets/2006#cell"}],"title":{"type":"text","$t":"A8"},"content":{"type":"text","$t":"watchOS 2 beta から正式版へのアップデート方法"},"link":[{"rel":"self","type":"application/atom+xml","href":"https://spreadsheets.google.com/feeds/cells/1_4v6XfqFYcB7GAF2Jps4l7EcVx2ngN5yqr-cLgxYFx4/od6/public/values/R8C1"}],"gs$cell":{"row":"8","col":"1","$t":"watchOS 2 beta から正式版へのアップデート方法"}},{"id":{"$t":"https://spreadsheets.google.com/feeds/cells/1_4v6XfqFYcB7GAF2Jps4l7EcVx2ngN5yqr-cLgxYFx4/od6/public/values/R8C2"},"updated":{"$t":"2015-12-02T15:08:38.956Z"},"category":[{"scheme":"http://schemas.google.com/spreadsheets/2006","term":"http://schemas.google.com/spreadsheets/2006#cell"}],"title":{"type":"text","$t":"B8"},"content":{"type":"text","$t":"http://press.treastrain.jp/how-to-update-watchos-to-the-official-version-from-the-beta/"},"link":[{"rel":"self","type":"application/atom+xml","href":"https://spreadsheets.google.com/feeds/cells/1_4v6XfqFYcB7GAF2Jps4l7EcVx2ngN5yqr-cLgxYFx4/od6/public/values/R8C2"}],"gs$cell":{"row":"8","col":"2","$t":"http://press.treastrain.jp/how-to-update-watchos-to-the-official-version-from-the-beta/"}},{"id":{"$t":"https://spreadsheets.google.com/feeds/cells/1_4v6XfqFYcB7GAF2Jps4l7EcVx2ngN5yqr-cLgxYFx4/od6/public/values/R9C1"},"updated":{"$t":"2015-12-02T15:08:38.956Z"},"category":[{"scheme":"http://schemas.google.com/spreadsheets/2006","term":"http://schemas.google.com/spreadsheets/2006#cell"}],"title":{"type":"text","$t":"A9"},"content":{"type":"text","$t":"iOS beta から 正式版 へのアップデート方法"},"link":[{"rel":"self","type":"application/atom+xml","href":"https://spreadsheets.google.com/feeds/cells/1_4v6XfqFYcB7GAF2Jps4l7EcVx2ngN5yqr-cLgxYFx4/od6/public/values/R9C1"}],"gs$cell":{"row":"9","col":"1","$t":"iOS beta から 正式版 へのアップデート方法"}},{"id":{"$t":"https://spreadsheets.google.com/feeds/cells/1_4v6XfqFYcB7GAF2Jps4l7EcVx2ngN5yqr-cLgxYFx4/od6/public/values/R9C2"},"updated":{"$t":"2015-12-02T15:08:38.956Z"},"category":[{"scheme":"http://schemas.google.com/spreadsheets/2006","term":"http://schemas.google.com/spreadsheets/2006#cell"}],"title":{"type":"text","$t":"B9"},"content":{"type":"text","$t":"http://press.treastrain.jp/how-to-update-ios-to-the-official-version-from-the-beta/"},"link":[{"rel":"self","type":"application/atom+xml","href":"https://spreadsheets.google.com/feeds/cells/1_4v6XfqFYcB7GAF2Jps4l7EcVx2ngN5yqr-cLgxYFx4/od6/public/values/R9C2"}],"gs$cell":{"row":"9","col":"2","$t":"http://press.treastrain.jp/how-to-update-ios-to-the-official-version-from-the-beta/"}},{"id":{"$t":"https://spreadsheets.google.com/feeds/cells/1_4v6XfqFYcB7GAF2Jps4l7EcVx2ngN5yqr-cLgxYFx4/od6/public/values/R10C1"},"updated":{"$t":"2015-12-02T15:08:38.956Z"},"category":[{"scheme":"http://schemas.google.com/spreadsheets/2006","term":"http://schemas.google.com/spreadsheets/2006#cell"}],"title":{"type":"text","$t":"A10"},"content":{"type":"text","$t":"iOS 9 にアプデする前に気をつけたいこと"},"link":[{"rel":"self","type":"application/atom+xml","href":"https://spreadsheets.google.com/feeds/cells/1_4v6XfqFYcB7GAF2Jps4l7EcVx2ngN5yqr-cLgxYFx4/od6/public/values/R10C1"}],"gs$cell":{"row":"10","col":"1","$t":"iOS 9 にアプデする前に気をつけたいこと"}},{"id":{"$t":"https://spreadsheets.google.com/feeds/cells/1_4v6XfqFYcB7GAF2Jps4l7EcVx2ngN5yqr-cLgxYFx4/od6/public/values/R10C2"},"updated":{"$t":"2015-12-02T15:08:38.956Z"},"category":[{"scheme":"http://schemas.google.com/spreadsheets/2006","term":"http://schemas.google.com/spreadsheets/2006#cell"}],"title":{"type":"text","$t":"B10"},"content":{"type":"text","$t":"http://press.treastrain.jp/you-have-to-take-care-before-updating-to-ios-9/"},"link":[{"rel":"self","type":"application/atom+xml","href":"https://spreadsheets.google.com/feeds/cells/1_4v6XfqFYcB7GAF2Jps4l7EcVx2ngN5yqr-cLgxYFx4/od6/public/values/R10C2"}],"gs$cell":{"row":"10","col":"2","$t":"http://press.treastrain.jp/you-have-to-take-care-before-updating-to-ios-9/"}}]}} |
読みづらいので、適当な Web サービスを使ってインデント付きで見たほうが楽ですね。
ちなみに私はいつも Json Parser Online (外部サイト) を使っています。
JSON で取得したデータは各自でパース!
Google スプレッドシート経由で JSON を使って RSS 情報を取得する方法を紹介してきました。
Google Feed API、Google がサービスを廃止するときは特に何も勧告すること無く廃止されることが多いのですが、
この Feed API に関しては様々なアプリケーションなどでも利用されていると思われるので、
影響はまぁまぁ大きいものと思われます。
今回のこの記事がアプリケーション開発者の方々の助けになればと思います。