2011-05-27 130 views
0

我使用python-amazon-product-api創建搜索欄,該搜索欄將返回類似於在亞馬遜網站上返回的結果的搜索結果。但是,當我執行itemSearch時,如下所示,我得到了一些結果,但它只返回由亞馬遜銷售和發運的產品。我想知道是否有人可以幫我解決這個問題。亞馬遜API未返回結果與亞馬遜網站結果對齊

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

回答

1

嘗試將「MERCHANTID」參數設置爲「所有」:

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

如果不指定它,它就會被默認爲「亞馬遜」,這就是爲什麼你看到的只是亞馬遜的產品(請參閱Item Search文檔的詳細信息)


爲了回答您的評論,這裏是我已經嘗試了代碼:

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英寸的超便攜筆記本電腦(Clementine的橙色)
  • 聯想IdeaCentre H405 77231AU臺式機(黑色)
  • 聯想ThinkPad筆記本0578F7U - 酷睿i3-370M的2.4GHz - 14英寸 - [... ]
  • 聯想G560系列0679AJU 15.6英寸筆記本電腦(黑色)
  • 聯想Ideapad G550 2958-9PU 15.6英寸筆記本電腦(黑色)

這似乎是目前顯示了確切的10個項目在您評論中鏈接到的Amazon搜索頁面上。

+0

謝謝您的回覆。當我補充說,結果已經改善了很多。但是,它仍然缺少一堆。例如,當我搜索「聯想」時,http://www.amazon.com/s/ref=nb_sb_noss?url=search-alias%3Daps&field-keywords=lenovo&x=0&y=0的前兩個結果仍然沒有出現。你能想到我能做的其他事情來改善結果嗎?非常感謝你的幫助! – iman453 2011-05-28 18:23:31

+0

是的,我不小心放置了一些嘗試:除了:塊,其中程序跳過一些結果。感謝您的回覆 :) – iman453 2011-06-03 22:23:31