淘宝店铺所有商品信息API接口详解:item_search_shop

接口核心功能

  • 接口名称taobao.item_search_shop(淘宝开放平台核心接口)
  • 作用:通过卖家ID( seller_id)或店铺ID( shop_id)获取指定店铺内所有商品信息,支持分页、排序及全量检索,适用于商品库管理、竞品监控、数据分析等场景。
  • 请求方式:HTTP GET/POST(需通过淘宝API网关路由)

必填参数

  • seller_id:卖家唯一ID(优先使用,部分版本 shop_id已失效)
  • page:当前页码(默认1)
  • page_size:每页商品数量(默认10,最大100,建议10-50)

可选参数

  • sort:排序方式
    • new:按新品排序
    • bid:价格升序
    • _bid:价格降序
    • sale:销量降序
  • category_id:商品分类ID(筛选特定分类商品)
  • fields:指定返回字段(如 num_iid,title,price,sales,pic_url,detail_url

返回数据结构

  • 基础信息
    • total_results:商品总数
    • page_count:总页数
    • request_id:请求唯一标识
  • 商品字段
    • num_iid:商品ID
    • title:商品标题
    • price:当前售价
    • original_price:原价
    • sales:销量
    • pic_url:主图URL
    • detail_url:详情页链接
    • category_id:分类ID
    • props:商品属性(JSON格式)
    • skus:SKU列表(含库存、价格)

认证与权限

  1. 注册与认证
    • 登录淘宝开放平台,完成企业/个人实名认证。
    • 创建应用,获取 App KeyApp Secret(密钥需严格保密)。
  2. 权限申请
    • 在应用管理页面申请 taobao.item_search_shop接口权限(部分场景需签约淘宝服务市场)。
  3. 签名生成
    • 使用MD5加密,按参数名排序后拼接 App Secret,生成大写签名。

调用示例(Python)

pythonimport requestsimport hashlibimport timedef generate_sign(params, app_secret):    sorted_params = sorted(params.items())    sign_str = app_secret + ''.join(f"{k}{v}" for k, v in sorted_params) + app_secret    return hashlib.md5(sign_str.encode()).hexdigest().upper()def search_shop_items(app_key, app_secret, seller_id, page=1, page_size=10, sort="sale"):    url = "https://gw.api.taobao.com/router/rest"    timestamp = time.strftime("%Y-%m-%d %H:%M:%S")    params = {        "app_key": app_key,        "method": "taobao.item_search_shop",        "format": "json",        "v": "2.0",        "sign_method": "md5",        "timestamp": timestamp,        "seller_id": seller_id,        "page": page,        "page_size": page_size,        "sort": sort,        "fields": "num_iid,title,price,sales,pic_url,detail_url"    }    params["sign"] = generate_sign(params, app_secret)    response = requests.get(url, params=params)    return response.json()# 示例调用app_key = "YOUR_APP_KEY"app_secret = "YOUR_APP_SECRET"seller_id = "898146183"  # 替换为实际卖家IDdata = search_shop_items(app_key, app_secret, seller_id, sort="_bid")print(data)

分页处理与性能优化

  • 分页逻辑:通过 pagepage_size循环调用,遍历所有分页获取全量数据。
  • 性能优化
    • 使用缓存(如Redis)减少重复请求。
    • 异步处理(如 asynciogevent)提升并发效率。
    • 定时任务(如 cronAPScheduler)定期更新数据。

错误处理与注意事项

  • 错误码
    • 0000:成功
    • 4003:参数错误
    • 4008:调用频率过高
  • 注意事项
    • 遵守《数据安全法》《个人信息保护法》,禁止非法获取用户隐私数据。
    • 避免高频调用(单应用每分钟不超过60次),超限将触发风控。
    • 商品信息存在延迟,建议定期更新(如每小时全量同步)。
    • 使用官方API而非爬虫,避免法律风险。

应用场景

  • 商品库管理:展示店铺所有商品信息。
  • 竞品监控:跟踪竞品价格、销量变化。
  • 数据分析:生成销量趋势图、价格分布热力图。
  • 个性化推荐:基于用户行为推荐相似商品。

通过合理使用 taobao.item_search_shop接口,可高效获取淘宝店铺商品信息,助力精准运营与数据分析。建议定期查阅淘宝开放API文档页面获取最新规范,确保系统稳定运行。


请使用浏览器的分享功能分享到微信等