2009-10-20 23 views
93

po użyciu API ebay niedawno, spodziewałem się, że będzie tak proste, aby żądać informacji z Amazon, ale nie wydaje ...Amazon produkty API - Patrząc na podstawowy przegląd i informacji

Nie wydaje się być dobrą stroną, która wyjaśnia podstawy. Na początek, jak nazywa się ta usługa? Stara nazwa została porzucona, jak sądzę, i akronim AWS używany wszędzie (ale czy nie jest to termin parasolowy, który obejmuje ich przetwarzanie w chmurze i 20 innych usług?).

Brak jest jasnych informacji na temat nowego procesu "podpisu". Gromadzenie fragmentów szczegółów z różnych stron, na które natknąłem się, wydaje się, że przed sierpniem 2009 wystarczyło konto programisty w Amazon, aby składać żądania i odzyskiwać XML. Teraz musisz użyć jakiegoś fantazyjnego procesu szyfrowania, aby utworzyć dodatkową liczbę w swoim tekście zapytania. Czy to oznacza, że ​​dane Amazon są całkowicie niedostępne dla programisty, który chce tylko szybkiego i prostego rozwiązania?

Wygląda na to, że istnieje niewielka ilość informacji na temat kanałów RSS, a także możesz uzyskać dostęp do elementów, które zostały "oznaczone" z łatwością, ale nie mogę powiedzieć, czy istnieje sposób na wyszukiwanie tytułów za pomocą RSS także. Niektóre witryny zdają się to sugerować, ale wydaje mi się, że są obecnie nieaktualne?

Jeśli ktoś może przedstawić krótkie podsumowanie obecnego stanu rzeczy, byłbym bardzo wdzięczny. Wszystko, co chcę zrobić, to przejść od tytułu książki do mojej bazy danych i użyć Classic ASP, aby uzyskać zestaw produktów pasujących do Amazon, wyświetlając zdjęcia okładek i ceny.

Widgety Amazon mogą wyświetlać wyniki wyszukiwania słów kluczowych na moich stronach, ale mam nad nimi mniejszą kontrolę i są pokazywane tylko użytkownikowi - mój kod nie może w nich zaglądać.

+1

Spędziłem zbyt wiele czasu na manipulowaniu przy pomocy API produktu Amazon, wielu interfejsów API i PHP. Cały mój kod jest dostępny [tutaj.] (Http://www.muschamp.ca/Muskie/webMashups.html) – Muskie

+0

Umieszczam kod PHP w GitHub, który pobiera i demonstruje, jak pobierać różne informacje z Amazon Product API, w jakiś sposób ludzie zauważyłem dzisiaj. Oryginalny kod PHP został napisany przez Ulricha Mierendorffa, a następnie zmodyfikowany przez Sameer Borate, a następnie rozszerzony przeze mnie. Wyjaśnienie Sameera jest tutaj: http: // www.codediesel.com/php/accessing-amazon-product-advertising-api-in-php/ – Muskie

+0

Jeśli chciałbyś, żebym opublikował ten sam kod pa mws, mogę to zrobić, kiedy wrócę do domu. – McStuffins

Odpowiedz

101

Twój post zawiera kilka pytań, więc postaram się odpowiedzieć na nie po jednym na raz:

  1. API jesteś zainteresowany jest Product Advertising API (PA). Pozwala na programowy dostęp do wyszukiwania i pobierania informacji o produktach z katalogu Amazon. Jeśli masz problemy ze znalezieniem informacji o interfejsie API, dzieje się tak dlatego, że usługa internetowa przeszła dwie zmiany nazwy w najnowszej historii: była również znana pod nazwą ECS i AAWS.
  2. Proces podpisu, do którego się odwołujesz, jest tym samym sygnaturą HMAC, którego używają wszystkie inne usługi AWS do uwierzytelniania. Wszystko, co jest wymagane do podpisania Twoich żądań do Interfejsu API promującego produkt, to funkcja do obliczenia skrótu SHA-1 i klucza programisty AWS. Więcej informacji można znaleźć w sekcji dokumentacji dla programistów pod adresem signing requests.
  3. O ile mi wiadomo, nie ma wsparcia dla pobierania kanałów RSS produktów lub tagów za pośrednictwem PA. Jeśli ktoś ma informacje sugerujące inaczej, popraw mnie.
  4. Interfejs API usług REST lub SOAP powinien sprawić, że użycie będzie bardzo proste. Amazon oferuje dość podstawowy przewodnik "Getting Started" dostępny here. Możesz także wyświetlić pełną dokumentację dla programistów interfejsu API: here.

Chociaż dokumentacja jest trochę trudna do znalezienia (prawdopodobnie ze względu na wszystkie zmiany nazwy), PA API jest bardzo dobrze udokumentowane i dość eleganckie. Przy odrobinie smaru na łokieć i wcześniejszych doświadczeniach w nawiązywaniu połączeń z usługami sieciowymi nie powinno być problemów z uzyskaniem potrzebnych informacji z interfejsu API.

+0

Dzięki za link i prawidłowe API. – Songo

+19

Warto wspomnieć, że interfejs PA-API jest już nieaktualny i należy teraz korzystać z usługi Amazon Marketplace Web Service (MWS): https://developer.amazonservices.com/index.html –

+5

Dead link do przewodnika "Getting Started" wymienione w punkcie 4 powyżej. – jerhewet

26

Zgadzam się, że Amazon wydaje się być celowo obfuskować nawet jak znaleźć dokumentację API, jak również go używać. Po prostu spekuluję.

Zmiana nazwy usług z "ECS" na "Product Advertising API" również nie była najlepszym posunięciem, w zasadzie unieważniła wszystkie skonstruowane przez nas Google Mojo z czasem.

Zajęło mi sporo czasu, aby "odkryć" ten zaktualizowany link do Product Advertising API. Nie pamiętam, jakbym był w stanie go łatwo odkryć poprzez typowy link "Developer" na stronie Amazon. Ta dokumentacja wydaje się być ważna i ostatnio pracowałem.

Zmiana procedur uwierzytelniania wydaje się również zwiększać złożoność, ale jestem pewien, że mają ku temu powód.

Używam SOAP przez C# do komunikacji z Amazon Product API.

Dzięki API REST trzeba szyfrować cały URL w dość specyficznej sposób. Parametry muszą być posortowane, itd. Jest po prostu więcej do zrobienia. Dzięki interfejsowi API SOAP wystarczy zaszyfrować operację + znacznik czasu i to wszystko.

Post Adama O'Neila tutaj, How to get album, dvd, and blueray cover art from Amazon, przechodzi przez SOAP metodą C#. Nie jest to oryginalna próbka, którą ściągnąłem, i wbrew temu, co powiedział, nie była to oficjalna próbka Amazonki, na którą natknąłem się, chociaż kod wygląda identycznie. Jednak Adam wykonuje dobrą robotę przedstawiając wszystkie niezbędne kroki. Szkoda, że ​​nie mogłem przyznać autorowi oryginału.

+0

Mówi mi, że potrzebuję aplikacji lub strony internetowej do rejestracji, ale chcę się zarejestrować, abym mógł uzyskać dostęp do interfejsu API i zbudować aplikację. Czy coś tu brakuje ?! –

Powiązane problemy