:date: 2007-12-17 23:49:41 :tags: python =================================== SOAPpyでAmazonにアクセス =================================== 実は今までSOAPを実際に触ったことがありませんでした。今回ちょっと必要があったので勉強中です。 とりあえず `python soap` で検索して見つけたIBM developerWorksの記事に目を通します。 `Python Web Servicesデベロッパー: Python SOAPライブラリー`_ で、次にSOAPpyをインストール。先にfpconstが必要っぽいです。 .. topic:: install :class: dos | C> easy_install fpconst | C> wget http://nchc.dl.sourceforge.net/sourceforge/pywebsvcs/SOAPpy-0.12.0.tar.gz | C> tar zxf SOAPpy-0.12.0.tar.gz | C> cd SOAPpy-0.12.0 | C> python setup.py install インストール完了。 次に、SOAPpy-0.12.0.tar.gzに同梱されていたサンプルコードを色々試してみようと思ったのですが、サンプルコードが利用しているURLのほとんど(全て?)が閉鎖されてしまっていたので、Amazonを例にして試してみようと思います。 .. code-block:: python >>> from SOAPpy import WSDL >>> proxy = WSDL.Proxy('http://soap.amazon.com/schemas3/AmazonWebServices.wsdl') >>> proxy.methods {u'ActorSearchRequest': , u'AddShoppingCartItemsRequest': , u'ArtistSearchRequest': , u'AsinSearchRequest': , ... とりあえず、wsdlファイルからメソッドを取得することが出来ました。しかし、実際の呼び出しは次のようにうまくいきませんでした。 .. code-block:: python >>> proxy.AsinSearchRequest() faultType: ううむ、引数に何を渡せば良いんだろう?WSDLには定義されてるんだろうけど、interactive shellで表示できると良いなあ‥‥、というところで、次回に続く。 .. _`Python Web Servicesデベロッパー: Python SOAPライブラリー`: http://www.ibm.com/developerworks/jp/webservices/library/ws-pyth5/ .. :extend type: text/html .. :extend: