亚马逊产品API-寻找基本概述和信息


125

在最近使用ebay API之后,我期望它可以像从Amazon索取信息一样简单,但是似乎不...

似乎没有一个很好的网页介绍基本知识。对于初学者来说,该服务叫什么?我认为旧名称已被删除,AWS的首字母缩写在所有地方都使用(但是,这不是一个包含其云计算和其他20种服务的保护性术语吗?)。

缺少有关新“签名”过程的明确信息。从我偶然发现的各个页面中收集细节片段,似乎在2009年8月之前,您只需要在Amazon拥有一个开发人员帐户即可发出请求并取回XML。现在,您必须使用一些特殊的加密过程在查询字符串中创建一个额外的数字。这是否意味着对于想要快速,简单的解决方案的程序员来说,Amazon数据完全无法使用?

RSS提要上似乎只有一小部分信息,您可以轻松地获得已被“标记”的项目的提要,但我无法确定是否也有使用RSS来搜索标题的方法。一些网站似乎建议这样做,但是我认为它们已经过时了吗?

如果有人可以简要概述当前的比赛情况,我将不胜感激。我要做的就是从数据库中的书名中查找书籍,并使用Classic ASP从Amazon获得一组匹配的产品,列出封面图像和价格。

Amazon'widgets'可以在页面上显示关键字搜索结果,但是我对这些搜索结果的控制较少,并且仅向用户显示-我的代码无法在其中查看。


1
我花了太多时间摆弄Amazon Product API,很多API和PHP。我的所有代码都在这里。
马斯基(Muskie)

我将PHP代码放入GitHub,以获取并演示了如何从Amazon Product API获取各种信息,人们今天已经注意到了这一点。原始的PHP代码由Ulrich Mierendorff编写,然后由Sameer Borate修改,然后由我扩展。Sameer的解释在这里:codediesel.com/php/…–
Muskie

如果您希望我发布相同的mws pa代码,则可以在回家时完成。
McStuffins

Answers:


123

您的帖子包含几个问题,因此,我将尝试一次回答一个问题:

  1. 您感兴趣的API是产品广告API(PA)。它允许您以编程方式访问从Amazon目录中搜索和检索产品信息。如果您找不到有关API的信息,那是因为Web服务在最近的历史中经历了两次名称更改:也称为ECS和AAWS。
  2. 您所指的签名过程与所有其他AWS服务用于身份验证的HMAC签名相同。将您的请求签名到Product Advertising API所需的全部功能是计算SHA-1哈希和AWS开发人员密钥的功能。有关更多信息,请参阅开发人员文档中有关签署请求的部分
  3. 据我所知,尚不支持通过PA检索产品或标签的RSS提要。如果有人提供其他建议,请纠正我。
  4. REST或SOAP API都应该使您的用例非常简单。亚马逊提供了一个相当基本的“入门”指南可在这里。另外,您还可以在此处查看完整的API开发人员文档。

尽管很难找到文档(可能是由于所有名称更改所致),但PA API的文档很好,而且相当优雅。有了一点点的润滑脂,并且有一些以前调用Web服务的经验,您从API获取所需信息不会有任何麻烦。


27
值得一提的是,现在不建议使用PA-API,现在应该使用Amazon Marketplace Web服务(MWS):developer.amazonservices.com/index.html
Dan Gravell 2012年

5
上面#4中引用的“入门”指南的无效链接。
jerhewet 2012年

9
@丹:这是不正确的,这些是不同目的的api。
abatishchev

1
我猜你是对的,因为API仍然存在!我想知道为什么我会这么想...我确定我已经收到一封电子邮件。或者,也许只针对某些用法不推荐使用。
Dan Gravell

任何人都只想获得特定商店的所有产品信息吗?
SarveshwarPM

29

我同意Amazon似乎有意混淆甚至如何查找和使用API​​文档。我只是在猜测。

将服务从“ ECS”重命名为“ 产品广告API ”可能也不是最好的做法,因为这实际上使他们随着时间的推移建立的所有Google mojo都失效了。

我花了很长时间才“发现”此产品广告API的更新链接。我不记得能够通过亚马逊网页上的典型“开发人员”链接轻松找到它。该文档似乎有效,也是我最近的工作。

身份验证过程的更改似乎也增加了更多的复杂性,但是我确定他们有这样做的理由。

我通过C#使用SOAP与Amazon Product API进行通信。

使用REST API,您必须以相当特定的方式加密整个URL。必须对参数进行排序,等等。还有更多工作要做。使用SOAP API,您只需加密operation + timestamp,就可以了。

亚当·奥尼尔(Adam O'Neil)的文章“ 如何从亚马逊获取专辑,dvd和蓝光封面”,介绍了使用C#方法进行SOAP的过程。它不是我提取的原始样本,并且与他的评论相反,这不是我偶然发现的亚马逊官方样本,尽管代码看起来相同。但是,亚当在提出所有必要步骤方面做得很好。我希望我能相信原始作者。


1
它告诉我需要注册一个应用程序或网站,但是我想注册才能访问API并构建应用程序。我想念这里吗?
K。。




By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.