139 votes

API de produits Amazon - Recherche d'une vue d'ensemble de base et d'informations

Après avoir récemment utilisé l'API d'eBay, je m'attendais à ce qu'il soit aussi simple de demander des informations à Amazon, mais il semble que non...

Il ne semble pas y avoir de bonne page web qui explique les bases. Pour commencer, quel est le service appelé? L'ancien nom a été abandonné je pense, et l'acronyme AWS est utilisé partout (mais n'est-ce pas un terme générique qui inclut également leur informatique en nuage et 20 autres services?).

Il y a un manque d'informations claires sur le nouveau processus de 'signature'. En rassemblant des morceaux de détails de diverses pages sur lesquelles je suis tombé, il semble qu'avant août 2009 vous aviez juste besoin d'un compte développeur chez Amazon pour faire des demandes et obtenir du XML en retour. Maintenant, vous devez utiliser un processus de cryptage sophistiqué pour créer un numéro supplémentaire dans votre chaîne de requête. Cela signifie-t-il que les données d'Amazon sont complètement hors de portée pour le programmeur qui veut juste une solution rapide et simple?

Il semble y avoir un tout petit peu d'informations sur les flux RSS, et vous pouvez obtenir un flux d'articles qui ont été 'taggés' facilement, mais je ne peux pas dire s'il y a un moyen de rechercher des titres en utilisant également le RSS. Certains sites Web semblent le suggérer, mais je pense qu'ils sont désormais obsolètes?

Si quelqu'un peut donner un bref résumé de l'état actuel des choses, je serais très reconnaissant. Tout ce que je veux faire, c'est passer d'un titre de livre dans ma base de données, et utiliser Classic ASP pour obtenir un ensemble de produits correspondants à partir d'Amazon, en listant les images de couverture et les prix.

Les 'widgets' d'Amazon peuvent afficher les résultats de recherche par mot-clé sur mes pages, mais j'ai moins de contrôle sur eux, et ils sont montrés seulement à l'utilisateur - mon code ne peut pas les examiner.

3 votes

J'ai passé trop de temps à manipuler l'API Amazon Product, de nombreuses autres APIs et PHP. Tout mon code est disponible ici.

0 votes

J'ai mis du code PHP sur GitHub qui récupère et montre comment récupérer diverses informations de l'API de produits Amazon, et de quelque manière que ce soit, les gens ont remarqué aujourd'hui. Le code PHP original a été écrit par Ulrich Mierendorff, puis modifié par Sameer Borate et ensuite étendu par moi-même. L'explication de Sameer se trouve ici: codediesel.com/php/…

0 votes

Si vous souhaitez que je publie un même code pa mws, je peux le faire lorsque je rentre à la maison.

128voto

Matt Points 2336

Votre message contient plusieurs questions, donc je vais essayer d'y répondre une par une :

  1. L'API qui vous intéresse est l' API Product Advertising (PA). Elle vous permet d'accéder de manière programmatique à la recherche et à la récupération d'informations sur les produits du catalogue d'Amazon. Si vous avez du mal à trouver des informations sur l'API, c'est parce que le service web a connu deux changements de nom récemment : il était également connu sous le nom d'ECS et AAWS.
  2. Le processus de signature auquel vous faites référence est la même signature HMAC que tous les autres services AWS utilisent pour l'authentification. Tout ce qui est requis pour signer vos demandes à l'API Product Advertising est une fonction pour calculer un hachage SHA-1 et une clé de développeur AWS. Pour plus d'informations, consultez la section de la documentation du développeur sur la signature des demandes.
  3. Autant que je sache, il n'y a pas de support pour récupérer les flux RSS de produits ou de balises à travers PA. Si quelqu'un a des informations suggérant le contraire, merci de me corriger.
  4. Les APIs REST ou SOAP devraient rendre votre cas d'utilisation très simple. Amazon fournit un guide "mise en route" assez basique disponible ici. De plus, vous pouvez consulter la documentation complète du développeur de l'API ici.

Bien que la documentation soit un peu difficile à trouver (probablement à cause de tous les changements de nom), l'API PA est très bien documentée et plutôt élégante. Avec un peu d'efforts et une certaine expérience préalable dans l'appel à des services web, vous ne devriez avoir aucun problème à obtenir les informations dont vous avez besoin à partir de l'API.

28 votes

Il convient de mentionner que l'API PA est désormais obsolète et que le Service Web Amazon Marketplace (MWS) doit désormais être utilisé : developer.amazonservices.com/index.html

5 votes

Lien mort pour le guide "démarrage" référencé dans le point #4 ci-dessus.

10 votes

@Dan : ceci est incorrect, ce sont des apis ayant des objectifs différents.

29voto

Zach Bonham Points 4460

Je suis d'accord qu'Amazon semble intentionnellement obscurcir même la façon de trouver la documentation de l'API, ainsi que de l'utiliser. Je ne fais que spéculer cependant.

Renommer les services de "ECS" en "API de Publicité Produit" n'était probablement pas non plus la meilleure décision, cela a essentiellement invalidé tout ce mojo Google qu'ils avaient construit au fil du temps.

Il m'a fallu un certain temps pour 'découvrir' ce lien mis à jour pour l'API de Publicité Produit. Je ne me souviens pas d'avoir pu le découvrir facilement via le lien 'Développeurs' habituel sur la page web d'Amazon. Cette documentation semble valide et c'est celle sur laquelle j'ai travaillé récemment.

Le changement des procédures d'authentification semble également ajouter une complexité supplémentaire, mais je suis sûr qu'ils ont une raison pour cela.

J'utilise SOAP via C# pour communiquer avec l'API de Produits Amazon.

Avec l'API REST, vous devez crypter toute l'URL d'une manière assez spécifique. Les paramètres doivent être triés, etc. Il y a juste plus à faire. Avec l'API SOAP, vous cryptez juste l'opération+l'horodatage, et c'est tout.

Le post d'Adam O'Neil ici, Comment obtenir des pochettes d'album, de dvd et de blu-ray d'Amazon, guide à travers la méthode SOAP avec C#. Ce n'est pas l'exemple original que j'ai récupéré, et contrairement à son commentaire, ce n'était pas un exemple officiel d'Amazon sur lequel je suis tombé, bien que le code semble identique. Cependant, Adam fait un bon travail en présentant toutes les étapes nécessaires. J'aimerais pouvoir créditer l'auteur original.

4 votes

Il me dit que j'ai besoin d'une application ou d'un site web pour m'inscrire, mais je veux m'inscrire afin de pouvoir accéder à l'API et développer l'application. Est-ce que j'ai raté quelque chose ici ?!

0 votes

Qu'est-ce que google mojo? Le lien vers Adam O'Neil à la fin ne fonctionne plus.

11voto

Skilldrick Points 33002

J'ai écrit un article de blog sur ce sujet, après avoir passé des heures à parcourir la documentation obscure d'Amazon. Peut-être utile comme autre point de vue sur le processus.

0 votes

Le blog n'existe plus

1 votes

Corrigé le lien! Pas sûr de sa pertinence maintenant mais je le garde pour sa valeur historique.

4voto

3voto

elhoim Points 2254

Tout droit de la bouche du cheval : Résumé des opérations de l'API Publicitaire de Produit qui comprend les catégories suivantes :

  • Trouver des articles
  • En savoir plus sur des articles spécifiques
  • Panier d'achat
  • Contenu client
  • Informations vendeur
  • Autres opérations

0 votes

Ce cheval est maintenant aussi mort :(

0 votes

J'ai ajouté une nouvelle réponse en février 2022

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X