【问题标题】:how to get the amazon product price using its name如何使用其名称获取亚马逊产品价格
【发布时间】:2013-05-22 23:09:42
【问题描述】:

很抱歉,如果它被认为是重复的,但我已经尝试了所有可以与 Amazon API 通信的 python 模块,但遗憾的是,所有这些模块似乎都需要产品 ID 才能获得确切的价格!我需要的是产品名称的价格!

最后,我尝试了Bottlenose 的扩展,它的名字是python-amazon-simple-product-api,除了它有同样的问题:我如何只从产品名称中获取价格。

这是我尝试过的:

product = api.search(Keyword = "playstation", SearchIndex='All')

for i, produ in enumerate(product):
    print "{0}. '{1}'".format(i, produ.title)

(这与使用 produ.price_and_currency 的结果相同,在带有文件的示例中使用 ID)

然后给我这个错误:

Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "build\bdist.win-amd64\egg\amazon\api.py", line 174, in __iter__
File "build\bdist.win-amd64\egg\amazon\api.py", line 189, in iterate_pages
File "build\bdist.win-amd64\egg\amazon\api.py", line 211, in _query amazon.api.SearchException: Amazon Search Error: 'AWS.MinimumParameterRequirement', 'Your request should have atleast 1 of the following parameters: 'Keywords','Title','Power','BrowseNode','Artist','Author','Actor','Director','AudienceRati g','Manufacturer','MusicLabel','Composer','Publisher','Brand','Conductor','Orchestra','Tex Stream','Cuisine','City','Neighborhood'.'

编辑:在将Keyword 更正为Keywords 之后,我得到了一个长时间的响应(无限循环!并尝试了几次)!不像只返回整个 XML,但是当只使用宽吻时,我只会得到没有价格或其他东西的标签......

<ItemLink>
  <Description>Technical Details</Description>
    <URL>http://www.amazon.com/*****</URL>
</ItemLink>

更新2:亚马逊似乎会返回ALL结果,那么如何将其限制为仅第一个存储桶(因为它通过10个结果组给出结果)

【问题讨论】:

  • 您是否尝试过使用“关键字”(如错误消息中所述)而不是“关键字”?
  • 是的,我似乎输入错误 :p 但响应很多时间,我如何只获得最低和最高价格?我重复了很多次,这真的需要时间!

标签: python amazon-product-api


【解决方案1】:

没有使用过 Amazon API 的经验:这是一个正确而智能地执行搜索的问题。仔细想想,通读一遍

http://docs.amazonwebservices.com/AWSECommerceService/2011-08-01/DG/ItemSearch.html

这样您就不会错过任何重要的搜索功能。

响应包含的内容介于 0 到数以千计的项目之间,具体取决于您搜索查询的智能程度。在任何情况下,响应中的商品都会通过其 ASIN(产品 ID)来标识自己。示例:&lt;ASIN&gt;B00021HBN6&lt;/ASIN&gt;

通过ItemSearch 收集ASIN 后,您可以对这些商品执行ItemLookup 以查找更多详细信息,例如价格。

【讨论】:

  • 似乎“All”无法获得“MaximumPrice”,所以用户必须指定产品的类型(遗憾)
【解决方案2】:

抱歉耽搁了,已解决:

使用search_n 完成分页:

test = api.search_n(10, Keywords='example name', SearchIndex='All') # this will return only 10 results

Link

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2023-02-16
    • 1970-01-01
    • 2015-11-03
    • 2013-02-10
    • 1970-01-01
    • 2019-08-11
    • 1970-01-01
    相关资源
    最近更新 更多