API продуктов Amazon - нужен базовый обзор и информация

125

После недавнего использования API ebay я ожидал, что запросить информацию у Amazon будет так же просто, но, похоже, нет ...

Кажется, не существует хорошей веб-страницы, объясняющей основы. Для начала как называется сервис? Я думаю, старое название было отброшено, а аббревиатура AWS использовалась повсюду (но разве это не общий термин, который включает их облачные вычисления и еще 20 других сервисов?).

Отсутствует четкая информация о новом процессе «подписи». Собирая вместе фрагменты деталей с разных страниц, на которые я наткнулся, кажется, что до августа 2009 года вам просто требовалась учетная запись разработчика в Amazon, чтобы делать запросы и получать обратно XML. Теперь вам нужно использовать какой-то необычный процесс шифрования, чтобы создать дополнительный номер в вашей строке запроса. Означает ли это, что данные Amazon полностью недоступны для программиста, которому просто нужно быстрое и простое решение?

Кажется, что в RSS-каналах есть крошечный кусочек информации, и вы можете легко получить поток элементов, которые были «помечены», но я не могу сказать, есть ли способ поиска заголовков с помощью RSS. Некоторые веб-сайты, кажется, предлагают это, но я думаю, что они уже устарели?

Если кто-нибудь сможет вкратце описать текущее состояние игры, я был бы очень благодарен. Все, что я хочу сделать, это перейти от названия книги в моей базе данных и использовать Classic ASP, чтобы получить набор продуктов, соответствующих Amazon, с указанием изображений обложек и цен.

«Виджеты» Amazon могут отображать результаты поиска по ключевым словам на моих страницах, но у меня меньше контроля над ними, и они отображаются только для пользователя - мой код не может заглянуть внутрь них.

Магнус Смит
источник
1
Я потратил слишком много времени на возню с Amazon Product API, на самом деле со многими API и PHP. Весь мой код доступен здесь.
Маски
Я поместил PHP-код в GitHub, который извлекает и демонстрирует, как извлекать различную информацию из Amazon Product API, что почему-то сегодня заметили люди. Исходный код PHP был написан Ульрихом Миендорф, затем модифицирован Самиром Боратом, а затем расширен мной. Объяснение Самира здесь: codediesel.com/php/…
Маски
Если вы хотите, чтобы я опубликовал тот же код mws pa, я могу сделать это, когда вернусь домой.
McStuffins

Ответы:

123

В вашем сообщении несколько вопросов, поэтому я постараюсь ответить на них по очереди:

  1. Интересующий вас API - это Product Advertising API (PA). Это позволяет вам программный доступ к поиску и извлечению информации о продуктах из каталога Amazon. Если у вас возникли проблемы с поиском информации об API, это связано с тем, что веб-сервис претерпел два изменения имени в недавней истории: он также был известен как ECS и AAWS.
  2. Процесс подписи, о котором вы говорите, - это та же подпись HMAC, что и все другие сервисы AWS для аутентификации. Все, что требуется для подписи ваших запросов к Product Advertising API, - это функция для вычисления хэша SHA-1 и ключа разработчика AWS. Дополнительные сведения см. В разделе документации разработчика о подписи запросов .
  3. Насколько мне известно, нет поддержки для получения RSS-каналов продуктов или тегов через PA. Если у кого-то есть информация об обратном, поправьте меня.
  4. Либо REST, либо SOAP API должны сделать ваш вариант использования очень простым. Amazon предоставляет довольно простое руководство по началу работы, доступное здесь . Также вы можете просмотреть полную документацию для разработчиков API здесь .

Хотя документацию найти немного сложно (вероятно, из-за всех изменений имен), PA API очень хорошо документирован и довольно элегантен. С небольшим количеством смазки и некоторым предыдущим опытом обращения к веб-службам у вас не должно возникнуть проблем с получением необходимой информации из API.

Matt
источник
27
Стоит отметить, что PA-API устарел, и теперь следует использовать Amazon Marketplace Web Service (MWS): developer.amazonservices.com/index.html
Дэн Грейвелл,
5
Мертвая ссылка на руководство по началу работы, указанное в пункте 4 выше.
jerhewet
9
@Dan: это неверно, это API другого назначения.
Абатищев
1
Полагаю, вы правы, так как API все еще существует! Интересно, почему я подумал об этом ... Я уверен, что получил письмо об этом. Или, может быть, он устарел только для определенных случаев использования.
Дэн Грейвелл
У кого-нибудь есть идея получить всю информацию о продукте только для определенного магазина?
SarveshwarPM
29

Я согласен с тем, что Amazon намеренно скрывает даже то, как найти документацию по API, а также как ее использовать. Я просто размышляю.

Переименование сервисов с «ECS» на « Product Advertising API », вероятно, также было не лучшим шагом, по сути, это сводило на нет все те моджо Google, которые они создали с течением времени.

Мне потребовалось довольно много времени, чтобы «обнаружить» эту обновленную ссылку на Product Advertising API . Я не помню, чтобы я мог легко найти его по типичной ссылке «Разработчик» на веб-странице Amazon. Эта документация кажется действительной и над чем я работал в последнее время.

Кажется, что изменение процедур аутентификации еще больше усложняет процесс, но я уверен, что для этого есть причина.

Я использую SOAP через C # для связи с Amazon Product API.

С помощью REST API вам нужно зашифровать весь URL-адрес довольно специфическим способом. Параметры должны быть отсортированы и т. Д. Осталось еще кое-что. С помощью SOAP API вы просто шифруете операцию + метку времени, и все.

В публикации Адама О'Нила « Как получить обложки альбомов, DVD и blueray с Amazon» рассматривается метод SOAP с C #. Это не оригинальный образец, который я снял, и, вопреки его комментарию, это не был официальный образец Amazon, на который я наткнулся, хотя код выглядит идентичным. Однако Адам хорошо представляет все необходимые шаги. Я хотел бы указать на оригинального автора.

Зак Бонэм
источник
1
Он сообщает мне, что для регистрации мне нужно приложение или веб-сайт, но я хочу зарегистрироваться, чтобы получить доступ к API и создать приложение. Я что-то здесь скучаю ?!
K ..
5

Я нашел хорошую альтернативу для запроса информации о продукте Amazon здесь: http://api-doc.axesso.de/

Это бесплатный API для отдыха, который возвращает всю необходимую информацию, связанную с запрошенным продуктом.

JerryParker
источник