2012-09-04 2 views
31

Ich versuche, die Details von Amazon-Produkt von seiner ASIN zu bekommen. Die Produkt-API ermöglicht ein Itemlookup mit ASIN, aber der Rückgabewert ist XML.Amazon Product Advertising API: So erhalten Sie eine JSON-Antwort für ItemLookup/Suche

Ich möchte diesen Aufruf für Itemlookup von Client-Seite zu tun, so möchte ich einen Anruf JSONP tun, die ich nicht finden konnte.

fand ich einige Artikel im Web die XML JSON Format mit XSLT-Stylesheet zu konvertieren:

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

Ich habe versucht, diese python-amazon-product-api und dieses Beispiel, aber ich nicht bekommen konnte JSON zurückgeben.

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

Die Anfrage ich zu senden versucht ist:

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 

Bitte helfen Sie mit einem JSON-Format mit Amazon product API bekommen. Irgendwelche Vorschläge sind willkommen.

Das OP kann dieses Stylesheet (Eingabedokument nicht verwendet) ausführen, um seine XSLT-Version zu ermitteln.

<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> 
+0

Bitte geben Sie ein Beispiel für die Rückgabewert XML und Ihre bestimmten erforderlichen JSON-Format. Es sollte dann möglich sein, ein XSLT-Stylesheet zu schreiben, um es in JSON umzuwandeln. Welche Version von XSLT können Sie verwenden? 1.0? oder 2.0? –

+0

Die XML-Antwort finden Sie unter https://gist.github.com/3626354. Ich möchte das Produkt Titel, Detailseite Link, das mittlere Bild des Produkts zu extrahieren. Ich bin mir nicht sicher über die Version des XSLT. Wie finde ich es heraus? – thomastinu

+0

Bitte führen Sie das enthaltene Stylesheet aus und melden Sie die Ergebnisse. –

Antwort

5

entweder von diesen Versuchen ::

  1. Amazon JSON API - Dies ist ein rubin Webdienst über Anfragen zu übergeben und die Antworten zu JSON übersetzen.
  2. jeder dieser Javascript-Funktionen Versuchen Sie, die XML Sie bereits in JSON zu konvertieren:
    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

Ich habe versucht thomasfrank mich selber. Es ist einfach und funktioniert gut :)

1

(Offenlegung) Ich bin Max und ich bin Mitbegründer von Zink (Zinc.io). Unsere API erzeugt eine JSON-Antwort sowohl für die Preisgestaltung als auch für die Produktdetailseite. Hier ist eine typische Antwort für ASIN-Details: https://www.dropbox.com/s/peccdc1m2j34e0d/B018QPI98A.json?dl=0. Wenn Sie interessiert sind, finden Sie hier: docs.zincapi.com

+0

Absolut empfehlenswert – caroso1222

Verwandte Themen