関連書籍をリストマニアから作成する実験

思い立ってAmazonのSimilarity(オススメ)とリストマニアのリストから、それぞれの書籍情報を取得し、出現回数をカウントするスクリプトを作ってみた。

実行結果

昨日の流れからフューチャー・イズ・ワイルドをサンプルとして使用(内訳は以下の表)

ヒット件数 リストマニア オススメ
0
0
(3)
3
1
128
(4)
128
2
2
(1)
2
6
1
(1)
1
合計
131
(9)
134

わざわざDisるために言及していたり、ただ買ったものを列記してたりまったく関係ないものが大多数を占めている

  • Similarityの一覧
書名 言及数
ワンダフル・ライフ―バージェス頁岩と生物進化の物語 (ハヤカワ文庫NF)
1
アフターマン 人類滅亡後の地球を支配する動物世界
6
フューチャー・イズ・ワイルド完全図解ーーThe WILD WORLD of the FUTURE
0
新恐竜
1
平行植物 (ちくま文庫)
1
鼻行類 (平凡社ライブラリー)
1
幻獣標本博物記
0
へんないきもの
2
またまたへんないきもの
0

へんないきものは言及していてまたまたへんないきものは言及なしとか、ワンダフル・ライフ―バージェス頁岩と生物進化の物語 (ハヤカワ文庫NF)があるのに眼の誕生――カンブリア紀大進化の謎を解くはオススメにもリストマニアにも無いとか

結論

このスクリプトは使い物にならない

  • 実行速度が遅いので待ちきれない
    1秒ルールのため、Similarityの取得→sleep(1)→ListmaniaListsの取得→(sleep(1)→ListIdでのListLookupの取得)×ListmaniaListsの個数としている
  • 内容がノイズばかり

備考)

県内図書所蔵マップで表示される関連書籍

書名 データ元
46億年 わたしたちの長き旅―地球大進化と人類のゆくえ w
ワンダフル・ライフ―バージェス頁岩と生物進化の物語 (ハヤカワ文庫NF) w/a
地球進化46億年の謎―こうして地球は地球になった (KAWADE夢文庫) w
アフターマン 人類滅亡後の地球を支配する動物世界 w/a
フューチャー・イズ・ワイルド完全図解ーーThe WILD WORLD of the FUTURE w/a
新恐竜 w/a
平行植物 (ちくま文庫) a
鼻行類 (平凡社ライブラリー) a
生命進化40億年の風景 w
地球のはじまりからダイジェスト 地球のしくみと生命進化の46億年 w
100億年後の地球―今から人類はどう進化していくのか! w
幻獣標本博物記 a
続 大いなる仮説―5.4億年前の進化のビッグバン w
へんないきもの a
またまたへんないきもの a

Myrmecoleonさんの[id:myrmecoleon:20070402:1175528229]のブックリスト演算で表示される関連書籍

書名 件数
反社会学講座
4
アホでマヌケなアメリカ白人
3
ゆとりの法則 ? 誰も書かなかったプロジェクト管理の誤解
3
イグ・ノーベル賞 大真面目で奇妙キテレツな研究に拍手!
3
プランク・ゼロ (ハヤカワ文庫 SF―ジーリー・クロニクル (1427))
3
万物理論 (創元SF文庫)
3
キャズム
3
しあわせの理由 (ハヤカワ文庫SF)
3
暗号解読―ロゼッタストーンから量子暗号まで
3
コンサルタントの道具箱
3
CODE―インターネットの合法・違法・プライバシー
3
アフターマン 人類滅亡後の地球を支配する動物世界
3
ワンダフル・ライフ―バージェス頁岩と生物進化の物語 (ハヤカワ文庫NF)
3
誰のためのデザイン?―認知科学者のデザイン原論 (新曜社認知科学選書)
3
コンサルタントの秘密―技術アドバイスの人間学
3
あなたの人生の物語 (ハヤカワ文庫SF)
3
パズルランドのアリス2 (ハヤカワ文庫NF 《数理を楽しむ》)
2
C言語による最新アルゴリズム事典 (ソフトウェアテクノロジー)
2
オブジェクト指向でなぜつくるのか―知っておきたいプログラミング、UML、設計の基礎知識―
2
少年名探偵 虹北恭助の冒険 (講談社ノベルス)
2

とりあえずは県内図書所蔵マップで表示している関連書籍でよさそう、他にアイデアが浮かべばそのうち試してみるかもです。

自分メモ

いつもごちゃごちゃになるので、XML::TreePPでECS4.0の結果をパースしてにたどり着くまでのデータ構造
ASINで商品を取得(ItemLookup)

$tree->{ItemLookupResponse}->{Items}->{Item}[$i]->{ItemAttributes}

ASINでオススメを取得(SimilarityLookup)

$tree->{SimilarityLookupResponse}->{Items}->{Item}[$i]->{ItemAttributes}

ListIdでリストマニアの言及リストを取得(ListLookupResponse)

$tree->{ListLookupResponse}->{Lists}->{List}->{ListItem}[$i]->{Item}->{ItemAttributes}