亚马逊API返回的结果与网站不一致
我正在使用python-amazon-product-api来创建一个搜索框,希望能返回类似于亚马逊网站上显示的搜索结果。不过,当我进行商品搜索时,像下面这样,我得到了一些结果,但这些结果只包括由亚马逊自己销售和发货的产品。我想知道有没有人能帮我解决这个问题。
root = api.item_search('All', Keywords=searchWord, ResponseGroup='Large', ItemPage=pageNo)
1 个回答
1
试着把'MerchantId'这个参数设置为'All':
root = api.item_search('All', Keywords=searchWord, ResponseGroup='Large', ItemPage=pageNo, MerchantId='All')
如果你不设置这个参数,它默认会是“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
这段代码的结果是这样的(截至2011年5月28日):
- 联想 G560 系列 067999U 笔记本电脑(黑色)
- 联想 G560 系列 0679ALU 15.6英寸笔记本电脑(黑色)
- 联想多媒体遥控器带键盘
- 联想 G560 系列 0679AKU 15.6英寸笔记本电脑(黑色)
- 联想 Ideapad Z560 09143YU 15.6英寸笔记本电脑(黑色)
- 联想 IdeaPad U260 08763DU 12.5英寸超便携笔记本电脑(橘色)
- 联想 Ideacentre H405 77231AU 台式机(黑色)
- 联想 ThinkPad 0578F7U 笔记本 - Core i3 i3-370M 2.4GHz - 14英寸 - [...]
- 联想 G560 系列 0679AJU 15.6英寸笔记本电脑(黑色)
- 联想 Ideapad G550 2958-9PU 15.6英寸笔记本电脑(黑色)
这些似乎正是你在评论中提到的亚马逊搜索页面上当前显示的10个商品。