API dei prodotti Amazon: ricerca di informazioni e panoramica di base


125

Dopo aver utilizzato l'API ebay di recente, mi aspettavo che fosse altrettanto semplice richiedere informazioni ad Amazon, ma sembra che non ...

Non sembra esserci una buona pagina web che spieghi le basi. Per cominciare, come si chiama il servizio? Il vecchio nome è stato abbandonato, credo, e l'acronimo AWS è stato utilizzato ovunque (ma non è un termine generico che include il loro cloud computing e anche altri 20 servizi?).

Mancano informazioni chiare sul nuovo processo di "firma". Raccogliendo frammenti di dettagli da varie pagine in cui sono incappato, sembra che prima di agosto 2009 avessi solo bisogno di un account sviluppatore con Amazon per effettuare richieste e ottenere XML. Ora devi usare qualche elaborato processo di crittografia per creare un numero extra nella tua stringa di query. Ciò significa che i dati di Amazon sono completamente fuori dalla portata del programmatore che desidera solo una soluzione rapida e semplice?

Sembra che ci siano poche informazioni sui feed RSS e puoi ottenere un feed di elementi che sono stati "taggati" facilmente, ma non posso dire se c'è un modo per cercare i titoli usando anche RSS. Alcuni siti web sembrano suggerirlo, ma penso che siano obsoleti ora?

Se qualcuno può fornire un breve riassunto della situazione attuale, sarei molto grato. Tutto quello che voglio fare è passare dal titolo di un libro nel mio database e utilizzare Classic ASP per ottenere un set di prodotti che corrispondono da Amazon, elencando le immagini di copertina e i prezzi.

I "widget" di Amazon possono visualizzare i risultati della ricerca per parole chiave sulle mie pagine, ma ho meno controllo su questi e vengono mostrati solo all'utente: il mio codice non può guardarli al loro interno.


1
Ho passato troppo tempo a giocherellare con l'API del prodotto Amazon, molte API in realtà e PHP. Tutto il mio codice è disponibile qui.
Muskie

Ho inserito il codice PHP in GitHub che recupera e dimostra come recuperare varie informazioni dall'API del prodotto Amazon, in qualche modo le persone hanno notato oggi. Il codice PHP originale è stato scritto da Ulrich Mierendorff, poi modificato da Sameer Borate e poi esteso da me. La spiegazione di Sameer è qui: codediesel.com/php/…
Muskie

Se vuoi che inserisca lo stesso codice pa mws, posso farlo quando torno a casa.
McStuffins

Risposte:


123

Il tuo post contiene diverse domande, quindi cercherò di rispondere una alla volta:

  1. L'API che ti interessa è la Product Advertising API (PA). Ti consente l'accesso programmatico per cercare e recuperare le informazioni sui prodotti dal catalogo di Amazon. Se hai problemi a trovare informazioni sull'API, è perché il servizio web ha subito due modifiche di nome nella storia recente: era noto anche come ECS e AAWS.
  2. Il processo di firma a cui ti riferisci è la stessa firma HMAC utilizzata da tutti gli altri servizi AWS per l'autenticazione. Tutto ciò che serve per firmare le tue richieste all'API di pubblicità del prodotto è una funzione per calcolare un hash SHA-1 e una chiave sviluppatore AWS. Per ulteriori informazioni, vedere la sezione della documentazione per sviluppatori sulle richieste di firma .
  3. Per quanto ne so, non esiste alcun supporto per il recupero di feed RSS di prodotti o tag tramite PA. Se qualcuno dispone di informazioni che suggeriscono il contrario, correggimi.
  4. Le API REST o SOAP dovrebbero rendere il tuo caso d'uso molto semplice. Amazon fornisce una guida "introduttiva" abbastanza semplice disponibile qui . Inoltre, puoi visualizzare la documentazione completa per sviluppatori API qui .

Sebbene la documentazione sia un po 'difficile da trovare (probabilmente a causa di tutte le modifiche al nome), l'API PA è molto ben documentata e piuttosto elegante. Con un pizzico di olio di gomito e qualche precedente esperienza nel chiamare i servizi web, non dovresti avere problemi a ottenere le informazioni di cui hai bisogno dall'API.


27
Vale la pena ricordare che l'API PA è ora deprecata e ora dovrebbe essere utilizzato Amazon Marketplace Web Service (MWS): developer.amazonservices.com/index.html
Dan Gravell

5
Collegamento morto per la guida "introduttiva" a cui si fa riferimento nel n. 4 sopra.
jerhewet

9
@ Dan: questo non è corretto, queste sono API per scopi diversi.
abatishchev

1
Immagino che tu abbia ragione, dato che l'API esiste ancora! Mi chiedo perché ho pensato questo ... sono sicuro di aver ricevuto un'e-mail dicendo questo. O forse è stato deprecato solo per determinati utilizzi.
Dan Gravell

Qualcuno ha qualche idea per ottenere tutte le informazioni sui prodotti solo per un particolare negozio?
SarveshwarPM

29

Sono d'accordo sul fatto che Amazon sembri offuscare intenzionalmente anche il modo di trovare la documentazione API e di usarla. Sto solo speculando però.

Rinominare i servizi da "ECS" a " Product Advertising API " probabilmente non era nemmeno la mossa migliore, essenzialmente invalidava tutto il fascino di Google che avevano costruito nel tempo.

Mi ci è voluto un po 'di tempo per "scoprire" questo collegamento aggiornato per l' API di pubblicità del prodotto . Non ricordo di essere stato in grado di scoprirlo facilmente tramite il tipico collegamento "Sviluppatore" sulla pagina web di Amazon. Questa documentazione sembra valida e ciò su cui ho lavorato di recente.

Anche la modifica alle procedure di autenticazione sembra aggiungere ulteriore complessità, ma sono sicuro che ne abbiano una ragione.

Uso SOAP tramite C # per comunicare con l'API del prodotto Amazon.

Con l'API REST devi crittografare l'intero URL in un modo abbastanza specifico. I parametri devono essere ordinati, ecc. C'è solo altro da fare. Con l'API SOAP, devi semplicemente crittografare l'operazione + timestamp, e questo è tutto.

Il post di Adam O'Neil qui, How to get album, dvd, and blueeray cover art from Amazon , walk through the SOAP with C # method. Non è il campione originale che ho tirato giù e, contrariamente al suo commento, non era un campione Amazon ufficiale in cui mi sono imbattuto, anche se il codice sembra identico. Tuttavia, Adam fa un buon lavoro nel presentare tutti i passaggi necessari. Vorrei poter dare credito all'autore originale.


1
Mi dice che ho bisogno di un'app o di un sito Web per registrarmi, ma voglio registrarmi in modo da poter accedere all'API e creare l'app. Mi manca qualcosa qui ?!
K ..


5

Ho trovato una buona alternativa per richiedere informazioni sui prodotti Amazon qui: http://api-doc.axesso.de/

È un'API di riposo gratuito che restituisce tutte le informazioni pertinenti relative al prodotto richiesto.



Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.