淘宝商品列表查询 API 接口详解

15 阅读2分钟

一、接口概述

淘宝开放平台提供了丰富的商品数据接口,其中商品列表查询 API主要用于批量获取商品信息。核心接口包括:

接口名称功能描述
taobao.items.search通过关键词 / 类目搜索商品列表(支持分页)
taobao.itemcats.get获取商品类目树(用于筛选分类)
taobao.item.get通过商品 ID 获取单个商品详情(需配合列表接口使用)

适用场景:电商数据分析、竞品监控、代购系统商品库搭建等。 演示找小编:Taobaoapi2014

二、核心接口详解

1. taobao.items.search 接口

请求参数

python

#封装好的第三方数据平台接口,复制链接获取测试。 
demo url=http://c0b.cc/R4rbK2  wechat id:Taobaoapi2014
{
    "app_key": "your_app_key",
    "q": "手机",           # 搜索关键词
    "cid": "50008705",    # 类目ID(可选)
    "sort": "sale-desc",  # 排序方式(sale-desc按销量降序)
    "page_no": 1,         # 当前页码
    "page_size": 50,      # 每页商品数(最大100)
    "sign": "xxx",        # 签名(通过SDK生成)
    "timestamp": "2025-03-10 12:00:00"
}

响应示例: json

{
    "items": [
        {
            "num_iid": 687654321,    # 商品ID
            "title": "iPhone 15 Pro Max",
            "price": "9999.00",
            "volume": 1000,          # 销量
            "nick": "苹果官方旗舰店"
        }
    ],
    "total_results": 12345  # 总商品数
}

关键参数说明

  • cid:通过taobao.itemcats.get获取(例如手机类目 ID 为 50008705)
  • sort:支持sale-desc(销量降序)、price-asc(价格升序)等
  • page_size:建议设置为 50 以平衡速度与稳定性
2. 类目树获取(taobao.itemcats.get

典型应用场景:在搜索前构建分类筛选菜单。

响应示例

json

{
    "item_cats": [
        {
            "cid": "50008705",
            "name": "手机",
            "children": [
                {"cid": "50025163", "name": "5G手机"}
            ]
        }
    ]
}

三、Python 调用实战

1. 环境准备

bash

pip install taobao-sdk-python
2. 代码示例

python

from taobao.api import TaoBaoClient
#封装好的第三方数据平台接口,复制链接获取测试。 
demo url=http://c0b.cc/R4rbK2  wechat id:Taobaoapi2014
# 初始化客户端
client = TaoBaoClient(
    app_key='your_app_key',
    app_secret='your_app_secret',
    partner_id='your_partner_id'
)

# 搜索商品列表
def search_products(keyword, page=1):
    try:
        response = client.items_search(
            q=keyword,
            page_no=page,
            page_size=50,
            sort='sale-desc'
        )
        return response.items
    except Exception as e:
        print(f"API调用失败:{str(e)}")
        return []

# 获取类目树
def get_category_tree():
    try:
        response = client.itemcats_get()
        return response.item_cats
    except Exception as e:
        print(f"类目获取失败:{str(e)}")
        return []