Python library of Amazon Associates Web Service
Python library of Amazon Associates Web Service を公開しました。既存で pyAWSというのがあるみたいですが、正直使いにくかったので、自分用に作成しました。Google App Engine に乗っけたかったので、Pure Python で dom をパースできる pxdom を同梱してます。もち、xml.dom.minidom でも動作します。APIのバージョンは、いまんとこ最新の "2009-02-01" です。とりあえず、ItemSearch の機能しかありません。
import aaws api = Api('1MGVS72Y8JF7EC7JDZG2') items = api.ItemSearch('Python', SearchIndex='Books', ResponseGroup='Small') print '%s' % items.url print 'TotalResults: %s' % items.count print 'TotalPages: %s' % items.num_pages print 'ItemPage: %s' % items.number for item in items.object_list: print ' * Title: %s' % item.Title if item.has_next() next = items.next_page_number() items = api.ItemSearch('Python', SearchIndex='Books', ResponseGroup='Small', ItemPage=next)
という使い方ができます。とりあえず、結果のクラスは paginator と互換性を持たせているので、ある程度直感的に使えるかもと期待w。Amazonで遊ぶアプリを作っているので、今後 ItemLookup 等のAPIも追加していく予定(いつもながら亀のスピード)。コードはいつもながらひどいと思います。
それと、公開しといてなんですが、AAWS は、もうすぐ Product Advertising API になるため 2009-08-15 で使えなくなるそうです・・・。いらないですね。まだ API 仕様読んでないですが、対応予定。予定は未定。
GoogleAppEngine で使ってみようかといろいろと試しています。 ResponseGroup に Images とかを指定した場合に isCollective で処理するところが手元ではウマく行きませんでしたので、こんな patch を書いてみました。
返信削除http://gist.github.com/114552
patch ありがとうございます。さっそく当てさせていただきました。
返信削除