利用淘宝API批量获取淘宝产品(不是商品!!!)

写完才搞明白,淘宝API里有两个概念,产品(Product)和商品(item),产品就像一个模板,可以用它来发布商品,比如现在有一个产品叫打火机,然后卖家A利用这个产品发布了一个商品A,定价是15块,卖家B也利用这个产品发布了一个商品B,定价是20块,那商品A和商品B就是两个不同的商品,虽然它们都卖的是产品打火机。。。唉,淘宝太坑了,有用的API就是不给你。

主要用到的淘宝API有3个:

1.taobao.itemcats.get
http://api.taobao.com/apidoc/api.htm?spm=0.0.0.0.RVqiAT&path=cid:3-apiId:122

该API用于获得所有的产品分类,我们可以利用这个API获取所有分类的ID(CategoryId)

2.taobao.products.search
http://api.taobao.com/apidoc/api.htm?path=cid:4-apiId:5

该API是一个搜索API,根据关键字等信息搜索产品,我们可以用分类Id(CategoryId)来进行搜索,达到查找该分类下产品的目的。

3.taobao.product.get
http://api.taobao.com/apidoc/api.htm?spm=0.0.0.0.PtotF7&path=cid:4-apiId:4

该API用于获取产品的具体信息

经过API调用发现,淘宝的产品类目有3级,结构如下:
taobao

下面来说说实现:
由于淘宝推出了SDK,所以这里展示的是.net调用SDK的代码,使用的是MVC 3.0框架,这里只展示关键的Controller代码。

1.获取产品分类,可以通过反复调用该方法遍历3层分类目录,注意其中有一个属性叫做is_parent,该属性表明是否在该分类下还有子分类,若有则为true

2.批量获取产品,根据上一步取到的CategoryID,进行搜索,然后取得产品列表,包含了产品的大致信息,包括名称,描述,图片,价格等,注意其中有一个PageSize属性,该属性表明每次取多少个商品,最大值为100。

3.获取具体产品信息,产品属性列表请参考:
http://api.taobao.com/apidoc/dataStruct.htm?path=cid:4-dataStructId:6-apiId:4-invokePath:product

打赏

6 Comments

Leave a Reply

Your email address will not be published. Required fields are marked *