香菜芹菜辣青椒,茄子扁豆嫩蒜苗,好大的黄瓜你们谁要,一个铜子儿拿两条。

2007-03-06

Amazon E-Commerce Service笔记 Part I

基本所有信息都来自于Amazon官方的Developer Guide。

完成REST request的Base Url: http://ecs.amazonaws.com/onca/xml?Service=AWSEcommerceService

对我的SnapAmazon应用来说,构建REST Request的必须参数有:
  • Service: 指定ECS服务名称;
  • AWSAccessKeyId: 必须获取一个id来作为获取信息的资质;
  • Operation: 指定操作方式;
  • AssociateTag: 可向Amazon申请一个Associate ID,以通过链接达成的交易来从亚马逊获取奖励分成;
  • ResponseGroup: 指定获取数据的内容和详尽程度(包含Request组可以在返回的文件中包含request参数)。
*调试时可用Validate=True来验证参数,如果发送的url参数有问题,返回一个值为False的IsValid参数,以及正常执行情况下会返回的错误信息。如果url参数正确,则会返回值为True的IsValid参数。

从Amazon获取产品信息的主要操作有两种,ItemSearchItemLookup。前者利用关键字进行相关性产品搜索,后者用来查找某确知物品的信息。

我的应用进行ItemSearch的主要参数包括:
  • Operation: =ItemSearch;
  • Keywords: 关键词。ECS会从产品名称、作者、演员、描述等信息中进行匹配;
  • Title: 按标题的部分或者全部内容进行匹配;
  • BrowseNodes: 产品种类;
  • Manufacturer: 按厂商的部分或者全部名称进行匹配;
  • Brand: 按品牌的全部或者部分名称进行匹配;
  • ItemPage: 对返回结果进行分页。每页10件,每次查询返回最多400页数据。
我的应用进行ItemLookup的主要参数包括:
  • Operation: =ItemLookup
  • ItemId:产品的ASIN、SKU、UPC、ISBN、EAN编码。一次只能用一种编码,多个编码之间用逗号隔开;
  • IdType:如果是SKU、UPC、EAN编码则必须制定此项;
  • SearchIndex:如果制定了UPC编码或者EAN,则需此项制定产品所属类别;
*关于各种编码,可参考http://zmaze.org/?p=192

作为通用参数之一,ResponseGroup限定了ItemSearch操作所返回数据的内容构成。默认的ResponseGroup包括了Request和Small两个数据组。部分重要的数据组分析如下:
  • Request:回显发送Request的参数;
  • ItemIds:仅仅返回产品的ASIN编码;
  • Small:总阔性的内容,包括ASIN编码、产品名称、作者(作者、演员、作曲家、导演等)、产品组别、Url地址、厂商。
  • Medium:包括了Smaill、Request、ItemAttributes、OfferSummary、SalesRank、EditorialReview、Images等子数据组;
  • Large:包括了Medium、Tracks、BrowseNodes、Reviews、ListmaniaLists、Similarities、Offers、Accessories等字数据组;
  • OfferSummary:价格汇总;
  • ItemAttributes:产品属性;
  • Tracks:曲目;
  • Accessories:附件;
  • BrowseNodes:类别;
  • Images:图片;
  • Reviews:评论。
对于得到数据的处理,留待Part II。

没有评论: