Как получить новые доступные книги от Amazon, используя их Product API? - PullRequest
0 голосов
/ 06 апреля 2011

Я пытаюсь использовать API продукта amazons, чтобы получить список их новых доступных книг, и у меня возникают проблемы с этим. В настоящее время я использую гем ruby-aaws-0.8.1, который нашел здесь .

Прямо сейчас я настроил код, который дает мне новейшую книгу с использованием ключевого слова, и установил ранг даты, но в настоящее время API возвращает мне новейшую книгу, но есть ли способ получить ее, чтобы она могла мне новейшую книгу?

Это первый ответ, который я получаю, но эта книга в данный момент недоступна. http://www.amazon.com/Artificial-Intelligence-Programming-techniques-Basic/dp/B000YC4KT6

#!/usr/bin/ruby -w

require 'amazon/aws/search'

include Amazon::AWS
include Amazon::AWS::Search

is = ItemSearch.new( 'Books', { 'Keywords' => 'Programming',
                              'Sort' => 'daterank',
                              'Available' => 'Available' })

is.response_group = ResponseGroup.new( 'Small' )

req = Request.new()
req.locale = 'us'
resp = req.search( is, 1 )

items = resp.item_search_response[0].items[0].item

items.each { |item| puts item, '' }

puts items.count

1 Ответ

0 голосов
/ 23 апреля 2011

Извините, я не имею права комментировать.Не уверен, что это проблема, но я думаю, что параметр ItemSearch для получения только доступных продуктов - это «Доступность», а не «Доступно».Вам также нужно будет использовать этот параметр в сочетании с идентификатором продавца и условием в соответствии с документом (http://docs.amazonwebservices.com/AWSECommerceService/2010-11-01/DG/ItemSearch.html). Не могли бы вы попробовать изменить:

is = ItemSearch.new( 'Books', {'Keywords' => 'Programming',
                              'Sort' => 'daterank',
                              'Available' => 'Available' })

с

is = ItemSearch.new( 'Books', { 'Keywords' => 'Programming',
                              'Sort' => 'daterank',
                              'Availability' => 'Available',
                              'MerchantId' => 'ATVPDKIKX0DER',
                              'Condition' => 'All'})

Приведенный выше MerchantId - это Amazon MerchantId для США. Вам необходимо соответствующим образом изменить этот MerchantId, если вы хотите посмотреть на инвентарь Amazon в других странах или если вы хотите посмотреть на инвентарь третьей стороны (читай не на Amazon).

...