RSS | コメントなしRSS(コメント無し)
トップ 最新 追記

$ ~ati/やる気 < /dev/zero

[ クッキングパパ レシピ検索 | ati's FREE素材集 ]


2014年09月06日(Sat) [長年日記] この日を編集

_ クッキングパパ レシピ検索を久しぶりに修正

クッキングパパ レシピ検索クッキングパパ 単行本-収録エピソード 検索では、書影の表示に楽天ウェブサービスAPIを使ってる。で、2009年から使ってたAPIに対して廃止のアナウンスが随分前から出てたんだけど、長いこと弄ってないし面倒で放置してた(をぃ
とはいえ、旧APIが2014年中には廃止されちゃうというので、やっぱ放っておくわけにもいかない。
最近仕事でJSON形式のデータを持ってきてゴニョゴニョなんてことをしてるおかげで頭が少しはJSON脳になってる感じwだし、ニョーボが休日出勤&ムスメも外出で珍しく休日に独りなので、重い腰を上げて新しい楽天ブックス書籍検索API (version:2013-05-22)へ対応させてみた。

アプリIDとやらを改めて取らなきゃならんっぽくていきなり面倒臭ぇなぁ…と思ったが、あちこちをよくよく調べてみたら取得済みのデベロッパーIDをそのまま使えるらしい。
もっと分かりやすいところに書いといてくれよ…アプリIDを取り直す前に気づいてよかったわ。

とりあえずAPIテストフォームから自分のサービスに必要なパラメータを一通り設定して、callすべきURLを取得。
プログラム中の旧API実行部分と比較して、パラメータを動的に埋め込む部分を反映し、プログラムを修正。
この時点で動かしてみるが、まぁ、予想通り動かない orz

でも、プログラムが生成したAPIのURLを直接叩いてみると、JSON形式のデータはちゃんと返ってきている。
呼び出し先を旧APIに戻してこちらのURLも実行し、新旧APIそれぞれが生成したJSONを比較してみたら、構造が全然違うでやんの…(==;)

旧APIの出力
{"Body":{"BooksBookSearch":{"Items":{"Item":[{"contentsKana":"","limitedFlag":0,"authorKana":"ウエヤマ,トチ","booksGenreID":"001001003004","author":"うえやまとち","subTitle":"","seriesNameKana":"モーニング ケイシー","title":"クッキングパパ(110)","subTitleKana":"","publisherName":"講談社","itemCaption":"","isbn":"9784063003161","largeImageUrl":"http://thumbnail.image.rakuten.co.jp/@0_mall/book/cabinet/3161/9784063003161.jpg?_ex=200x200","mediumImageUrl":"http://thumbnail.image.rakuten.co.jp/@0_mall/book/cabinet/3161/9784063003161.jpg?_ex=120x120","titleKana":"クッキング パパ","availability":"1","postageFlag":0,"salesDate":"2010-05-01","contents":"","smallImageUrl":"http://thumbnail.image.rakuten.co.jp/@0_mall/book/cabinet/3161/9784063003161.jpg?_ex=64x64","itemPrice":545,"size":"コミック","affiliateUrl":"http://hb.afl.rakuten.co.jp/hgc/g00q0721.tj4muebf.g00q0721.tj4mvc57/?pc=http%3A%2F%2Fbooks.rakuten.co.jp%2Frb%2F6454053%2F","seriesName":"モーニングKC","reviewCount":28,"reviewAverage":4.61,"discountRate":0,"itemUrl":"http://books.rakuten.co.jp/rb/6454053/"}]},"pageCount":1,"hits":1,"last":1,"count":1,"page":1,"carrier":0,"first":1}},"Header":{"Status":"Success","Args":{"Arg":{"outOfStockFlag":{"content":true,"value":"1"},"apiVersion":{"content":true,"value":"20"},"operation":{"content":true,"value":"BooksBookSearch"},"hits":{"content":true,"value":"1"},"developerId":{"content":true,"value":"8c8e532069f2ea584d1fd2e2d58fd5a3"},"isbn":{"content":true,"value":"9784063003161"},"User-Agent":{"content":true,"value":"Mozilla/5.0 (Windows NT 6.3; WOW64; rv:31.0) Gecko/20100101 Firefox/31.0"},"affiliateId":{"content":true,"value":"068f7f36.195bbf19.068f7f37.6d2ab33e"},"availability":{"content":true,"value":"0"},"version":{"content":true,"value":"2009-04-15"}}},"StatusMsg":""}}
新APIの出力
{"count":1,"page":1,"first":1,"last":1,"hits":1,"carrier":0,"pageCount":1,"Items":[{"Item":{"title":"クッキングパパ(110)","titleKana":"クッキング パパ","subTitle":"","subTitleKana":"","seriesName":"モーニングKC","seriesNameKana":"モーニング ケイシー","contents":"","author":"うえやまとち","authorKana":"ウエヤマ,トチ","publisherName":"講談社","size":"コミック","isbn":"9784063003161","itemCaption":"","salesDate":"2010年05月","itemPrice":545,"listPrice":0,"discountRate":0,"discountPrice":0,"itemUrl":"http://books.rakuten.co.jp/rb/6454053/","affiliateUrl":"http://hb.afl.rakuten.co.jp/hgc/g00q0721.tj4muebf.g00q0721.tj4mvc57/?pc=http%3A%2F%2Fbooks.rakuten.co.jp%2Frb%2F6454053%2F&m=http%3A%2F%2Fm.rakuten.co.jp%2Frms%2Fmsv%2FItem%3Fn%3D6454053%26surl%3Dbook","smallImageUrl":"http://thumbnail.image.rakuten.co.jp/@0_mall/book/cabinet/3161/9784063003161.jpg?_ex=64x64","mediumImageUrl":"http://thumbnail.image.rakuten.co.jp/@0_mall/book/cabinet/3161/9784063003161.jpg?_ex=120x120","largeImageUrl":"http://thumbnail.image.rakuten.co.jp/@0_mall/book/cabinet/3161/9784063003161.jpg?_ex=200x200","chirayomiUrl":"","availability":"1","postageFlag":0,"limitedFlag":0,"reviewCount":28,"reviewAverage":"4.61","booksGenreId":"001001003004"}}],"GenreInformation":[]}

上のデータから商品ページへのリンクと書影のURL、コミックのタイトルを抽出して表示してるので、生データを目視で比較しながらデータ構造を確認し、JSONPでコールバック実行されるJavaScriptのプログラムを修正してデータ構造の変化に対応、ようやく元通りに書影が表示されるようになったわ。
┐(´д`)┌ヤレヤレ

休日の昼間っから頑張っちゃったよwww

_ 「クッキングパパ 単行本-収録エピソード 検索」データ追加

プログラムを弄った勢いで、長らく放置プレイだった「クッキングパパ 単行本-収録エピソード 検索」へ久しぶりにデータ追加。
なんと前回から約4年2ヶ月ぶり!! その間に溜まってしまったクッキングパパのコミックスが111~128巻の18冊!!
我ながら呆れるわ ^^;;;

そんなワケで最新128巻までのデータを反映させた「クッキングパパ 単行本-収録エピソード 検索」、各話サブタイトルのキーワード検索もできるので、サブタイトルに入ってる料理名から簡易的な料理検索にも使えます (^o^)/





トップ 最新 追記

人生感意気 功名誰復論

(今日: 昨日:)