如何获取淘宝店铺在售商品列表?这篇文章带你看如何遍历淘宝在售商品列表

-


小伙伴们在日常开发中,经常会涉及需要拉取到店铺的在售商品列表的需求,一般拉取到商品信息拉取到后会保存到数据库后,以便用于库存更新同步、价格更新同步等

拉取淘宝店铺在售商品列表,我们一般用: taobao.items.onsale.get 这个接口,这个接口的参数如下:(老规矩,调用接口前要进行淘宝开放平台商家授权)

fields
String
true
num_iid,title,price
需返回的字段列表。可选值:Item商品结构体中的以下字段: approve_status,num_iid,title,nick,type,cid,pic_url,num,props,valid_thru,list_time,price,has_discount,has_invoice,has_warranty,has_showcase,modified,delist_time,postage_id,seller_cids,outer_id,sold_quantity ;字段之间用“,”分隔。不支持其他字段,如果需要获取其他字段数据,调用taobao.item.seller.get 获取。
q
String
false
N97
搜索字段。搜索商品的title。
cid
Number
false
1512
商品类目ID。ItemCat中的cid字段。可以通过taobao.itemcats.get取到
seller_cids
String
false
11
卖家店铺内自定义类目ID。多个之间用“,”分隔。可以根据taobao.sellercats.list.get获得.(注:目前最多支持32个ID号传入)
page_no
Number
false
10
页码。取值范围:大于零的整数。默认值为1,即默认返回第一页数据。用此接口获取数据时,当翻页获取的条数(page_no*page_size)超过10万,为了保护后台搜索引擎,接口将报错。所以请大家尽可能的细化自己的搜索条件,例如根据修改时间分段获取商品
page_size
Number
false
100
每页条数。取值范围:大于零的整数;最大值:200;默认值:40。用此接口获取数据时,当翻页获取的条数(page_no*page_size)超过2万,为了保护后台搜索引擎,接口将报错。所以请大家尽可能的细化自己的搜索条件,例如根据修改时间分段获取商品
order_by
String
false
list_time:desc
排序方式。格式为column:asc/desc ,column可选值:list_time(上架时间),delist_time(下架时间),num(商品数量),modified(最近修改时间),sold_quantity(商品销量),;默认上架时间降序(即最新上架排在前面)。如按照上架时间降序排序方式为list_time:desc
has_discount
Boolean
false
true
是否参与会员折扣。可选值:true,false。默认不过滤该条件
has_showcase
Boolean
false
true
是否橱窗推荐。 可选值:true,false。默认不过滤该条件
is_taobao
Boolean
false
true
商品是否在淘宝显示
is_ex
Boolean
false
true
商品是否在外部网店显示
start_modified
Date
false
2000-01-01 00:00:00
起始的修改时间
end_modified
Date
false
2000-01-01 00:00:00
结束的修改时间
is_cspu
Boolean
false
true
是否挂接了达尔文标准产品体系
is_combine
Boolean
false
true
组合商品
auction_type
String
false
a
商品类型:a-拍卖,b-一口价

,接口返回参数如下:

total_results
Number
150
搜索到符合条件的结果总数
items
Item []
搜索到的商品列表,具体字段根据设定的fields决定,不包括desc字段
approve_status
String
onsale
商品上传后的状态。onsale出售中,instock库中
iid
String
13232
商品iid
num_iid
Number
1489161932
商品数字id
title
String
Google test item
商品标题,不能超过60字节
nick
String
tbtest561
卖家昵称
type
String
fixed
商品类型(fixed:一口价;auction:拍卖)注:取消团购
cid
Number
132443
商品所属的叶子类目 id
seller_cids
String
2234445,3344466,446434
商品所属的店铺内卖家自定义类目列表
pic_url
String
http://img03.taobao.net/bao/uploaded/i3/T1HXdXXgPSt0JxZ2.8_070458.jpg
商品主图片地址
num
Number
8888
商品数量
props
String
135255:344454
商品属性 格式:pid:vid;pid:vid
valid_thru
Number
7
有效期,7或者14(默认是7天)
list_time
Date
2009-10-22 14:22:06
上架时间(格式:yyyy-MM-dd HH:mm:ss)
price
String
5.00
商品价格,格式:5.00;单位:元;精确到:分
has_discount
Boolean
true
支持会员打折,true/false
has_invoice
Boolean
true
是否有发票,true/false
has_warranty
Boolean
true
是否有保修,true/false
has_showcase
Boolean
true
橱窗推荐,true/false
modified
Date
2000-01-01 00:00:00
商品修改时间(格式:yyyy-MM-dd HH:mm:ss)
delist_time
Date
2000-01-01 00:00:00
下架时间(格式:yyyy-MM-dd HH:mm:ss)
postage_id
Number
32
宝贝所属的运费模板ID,如果没有返回则说明没有使用运费模板
outer_id
String
34143554352
商家外部编码(可与商家外部系统对接)。需要授权才能获取。
is_ex
Boolean
true
是否在外部网店显示
is_virtual
Boolean
true
虚拟商品的状态字段
is_taobao
Boolean
true
是否在淘宝显示
sold_quantity
Number
8888
商品销量
is_cspu
Boolean
true
是否为达尔文挂接成功了的商品
first_starts_time
Date
2000-01-01 00:00:00
商品首次上架时间

返回参数中的 numiid,一般就是用来更新库存、更新价格的唯一标志。

注意,fields,你需要哪些字段就传入哪些,尽量不要每个字段都获取,因为会影响接口的成功率,你要查询的字段越多,接口就有更大概率报异常(因为淘宝后端都是一个个微服务,比如你要了售价字段,它可能就需要去调用另外一个微服务查询售价。),所涉及微服务只要有一个崩了,本次查询可能就失败了,但是也不用太担心,你就算拿所有字段,接口返回错误的概率也很小的。


本文转载 " 整理 "

原文地址 " "