web-dev-qa-db-ja.com

Amazon Product Advertising API:ItemLookup / SearchのJSON応答を取得する方法

ASINからAmazon製品の詳細を取得しようとしています。製品APIではASINを使用してItemlookupを実行できますが、戻り値はXMLにあります。

クライアント側からItemlookupのこの呼び出しを実行したいので、見つからなかったJSONP呼び出しを実行します。

XSLTスタイルシートを使用してXMLをJSON形式に変換するいくつかの記事をWebで見つけました。

(a) https://bitbucket.org/basti/python-Amazon-product-api/src/tip/examples/json-results.py

このpython-Amazon-product-apiとこの例を使用してみましたが、JSONを返すことができませんでした。

(b) http://www.kokogiak.com/gedankengang/2006/05/sumption-amazons-web-api-directly.html

私が送信しようとしたリクエストは:

http://xml-us.amznxslt.com/onca/xml?AWSAccessKeyId=[ACCESS KEY]&AssociateTag=[ASSOCIATE TAG]&ContentType=text%2Fjavascript&IdType=ASIN&ItemId=B008IEGS9W&Operation=ItemLookup&ResponseGroup=Images%2CItemAttributes&Service=AWSECommerceService&Style=http%3A%2F%2Fforums.delphiforums.com%2Fdelphidocsz%2Famazon%2Fjson.xsl&Timestamp=2012-09-04T06%3A40%3A11Z&Signature=AGOqXvVSeMp3YyVkT4mGNXVx0cFGG%2Bh%2FdAebevbbF9o%3D

Amazon product APIを使用してJSON形式を取得するのを手伝ってください。どんな提案でも大歓迎です。


OPはこのスタイルシート(入力ドキュメントは使用されません)を実行して、XSLTバージョンを確認できます。

<xsl:stylesheet version="1.0"
  xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
  xmlns:msxsl="urn:schemas-Microsoft-com:xslt"
  exclude-result-prefixes="xsl msxsl">
<xsl:output method="html" indent="yes"/>

<xsl:template match="/">
  <html>
    <head><title>About your XSLT Processor</title></head> 
   <body>
     <ul>
       <li>xsl:version=<xsl:value-of select="system-property('xsl:version')" /></li>
       <li>xsl:vendor=<xsl:value-of select="system-property('xsl:vendor')" /></li>
       <li>xsl:vendor-url=<xsl:value-of select="system-property('xsl:vendor-url')" /></li>
       <li>xsl:product-name=<xsl:value-of select="system-property('xsl:product-name')" /></li>
       <li>xsl:product-version=<xsl:value-of select="system-property('xsl:product-version')" /></li>
       <li>xsl:is-schema-aware=<xsl:value-of select="system-property('xsl:is-schema-aware')" /></li>
       <li>xsl:supports-serialization=<xsl:value-of select="system-property('xsl:supports-serialization')" /></li>
       <li>xsl:supports-backwards-compatibility=<xsl:value-of select="system-property('xsl:supports-backwards-compatibility')" /></li>
       <li>msxsl:version=<xsl:value-of select="system-property('msxsl:version')" /></li>
     </ul>  
   </body>  
 </html>  
</xsl:template>

</xsl:stylesheet>
38
thomastinu

これらのいずれかを試してください::

  1. Amazon JSON API -これは、Rubyリクエストをパススルーして応答をJSONに変換するWebサービスです。
  2. これらのJavaScript関数のいずれかを試して、すでに持っているXMLをJSONに変換してください:
    1. http://goessner.net/download/prj/jsonxml/
    2. http://davidwalsh.name/convert-xml-json
    3. http://www.fyneworks.com/jquery/xml-to-json/
    4. http://www.thomasfrank.se/xml_to_json.html

私はトーマスフランクを自分で試しました。その簡単でうまく機能します:)

6
SashaZd

(開示)私はマックスであり、私はジンク(zinc.io)の共同設立者です。 APIは、価格設定と製品の詳細ページの両方に対してJSON応答を生成します。 ASINの詳細に対する典型的な応答は次のとおりです: https://www.dropbox.com/s/peccdc1m2j34e0d/B018QPI98A.json?dl= 。興味がある場合は、こちらをご覧ください:docs.zincapi.com

0
maxko87