Amazon API не возвращает результаты, соответствующие результатам веб-сайта Amazon

Я использую python-amazon-product-api для создания панели поиска, которая будет возвращать результаты, аналогичные результатам, выдаваемым на сайте amazon. Однако, когда я выполняю itemSearch следующим образом, я получаю некоторые результаты, но он возвращает только продукты, которые продаются и отправляются amazon. Мне было интересно, может ли кто-нибудь помочь мне исправить это.

 root = api.item_search('All', Keywords=searchWord, ResponseGroup='Large', ItemPage=pageNo)

person iman453    schedule 27.05.2011    source источник


Ответы (1)


Попробуйте установить для параметра MerchantId значение All:

root = api.item_search('All', Keywords=searchWord, ResponseGroup='Large', ItemPage=pageNo, MerchantId='All')

Если вы не укажете его, по умолчанию будет указано «Amazon», поэтому вы видите только продукты Amazon (см. Поиск товаров для получения дополнительной информации)


Чтобы ответить на ваш комментарий, вот код, который я пробовал:

AWS_KEY = '...'
SECRET_KEY = '...'
searchWord = "Lenovo"
pageNo = "1"

api = API(AWS_KEY, SECRET_KEY, 'us')

result = api.item_search('All', Keywords=searchWord, ResponseGroup='Large', ItemPage=pageNo, MerchantId='All')
for item in result.Items.Item:
    print item.ItemAttributes.Title

Это дает следующие результаты (по состоянию на 28.05.2011)

  • Ноутбук Lenovo G560 Series 067999U (черный)
  • Lenovo G560 Series 0679ALU 15,6-дюймовый ноутбук (черный)
  • Мультимедийный пульт Lenovo с клавиатурой
  • Lenovo G560 Series 0679AKU 15,6-дюймовый ноутбук (черный)
  • Lenovo Ideapad Z560 09143YU 15,6-дюймовый ноутбук (черный)
  • Lenovo IdeaPad U260 08763DU 12,5-дюймовый ультрапортативный ноутбук (Clementine Orange)
  • Настольный компьютер Lenovo Ideacentre H405 77231AU (черный)
  • Ноутбук Lenovo ThinkPad 0578F7U — Core i3 i3-370M 2,4 ГГц — 14 дюймов — [...]
  • Lenovo G560 Series 0679AJU 15,6-дюймовый ноутбук (черный)
  • Lenovo Ideapad G550 2958-9PU 15,6-дюймовый ноутбук (черный)

Кажется, это именно те 10 элементов, которые в настоящее время отображаются на странице поиска Amazon, на которую вы ссылались в своем комментарии.

person user635090    schedule 28.05.2011
comment
Спасибо за ваш ответ. Когда я добавил это, результаты значительно улучшились. Тем не менее, это все еще отсутствует куча из них. Например, когда я ищу «Lenovo», первые два результата выводятся из amazon.com/s/ по-прежнему не отображается. Можете ли вы придумать что-нибудь еще, что я мог бы сделать, чтобы улучшить результаты? Большое спасибо за Вашу помощь! - person iman453; 28.05.2011
comment
Да, я небрежно разместил несколько блоков try:except:, из-за чего программа пропускала некоторые результаты. Спасибо за ответ :) - person iman453; 04.06.2011