前回のエントリーで書いたAmazon の書籍を楽天ブックスで買うためのブックマークレットですが、処理の流れとしては、
- javascript で表示中の Amazon の URL から ASIN を取得
- 取得した ASIN を Amazon の API に渡して ISBN を取得
- 取得した ISBN を楽天の楽天ブックス書籍API に渡して楽天ブックスの商品ページを取得
書籍の場合はこれでうまくいくのですが、雑誌の場合はうまくいきません。雑誌には ISBN ではなく、JANコードが付けられており、ASIN→ISBN変換では値を返さないからです。
いろいろ調べてみると、Amazon API の ItemAttributes レスポンスグループの中にある EAN が日本の雑誌の場合には JANコードになっていることがわかりました。そこで、ASIN→ISBN変換で値を返さない場合は、EAN を取得し、これを楽天ブックス雑誌検索API に渡すことで、雑誌でも楽天ブックスの商品ページを取得できるようになりました。
これを応用すれば、CD や DVD でも Amazon→楽天の検索ができるかもしれません(未検証ですが)。