当前位置: 首页 > article >正文

淘宝获取商品sku详情API接口如何调用?

以下是调用淘宝开放平台/万邦开放平台获取商品SKU详情API接口的具体步骤和示例:

一、API名称及参数

  • API名称taobao.item.sku.get
  • 主要功能:获取指定商品SKU的详细信息,包括属性、价格、库存等。
  • 关键参数
    • num_iid:商品ID(必填)
    • sku_id:SKU ID(可选,不填则返回所有SKU)
    • fields:指定返回的字段(如sku_id,price,quantity,properties
    • is_promotion:是否返回促销价(0或1)

二、调用步骤

1. 获取Access Token

通过OAuth 2.0流程获取访问令牌(需用户授权或客户端凭证):

 

python复制代码

import requests
def get_access_token(app_key, app_secret):
url = "https://oauth.taobao.com/token"
params = {
"grant_type": "client_credentials",
"client_id": app_key,
"client_secret": app_secret
}
response = requests.post(url, data=params)
return response.json().get("access_token")
2. 构造请求
 

python复制代码

def get_sku_details(app_key, app_secret, item_id, sku_id=None):
access_token = get_access_token(app_key, app_secret)
url = "https://eco.taobao.com/router/rest"
params = {
"method": "taobao.item.sku.get",
"app_key": app_key,
"session": access_token,
"num_iid": item_id,
"fields": "sku_id,price,quantity,properties,status",
"timestamp": str(int(time.time())),
"format": "json",
"v": "2.0",
"sign_method": "md5"
}
if sku_id:
params["sku_id"] = sku_id
# 生成签名(按文档规则)
sorted_params = sorted(params.items())
sign_str = "".join([f"{k}{v}" for k, v in sorted_params if k not in ["sign"]])
sign_str += app_secret
params["sign"] = hashlib.md5(sign_str.encode()).hexdigest().upper()
response = requests.get(url, params=params)
return response.json()
3. 解析响应
 

python复制代码

import json
# 示例:获取商品ID为123456的SKU详情
app_key = "your_app_key"
app_secret = "your_app_secret"
item_id = "123456"
result = get_sku_details(app_key, app_secret, item_id)
if result.get("taobao_response") and result["taobao_response"].get("code") == 200:
skus = result["taobao_response"]["item_sku_get_response"]["skus"]["sku"]
for sku in skus:
print(f"SKU ID: {sku['sku_id']}, 价格: {sku['price']}, 库存: {sku['quantity']}, 属性: {sku['properties']}")
else:
print("请求失败:", result.get("error_response", {}).get("msg"))

三、响应示例

 

json复制代码

{
"taobao_response": {
"code": 200,
"item_sku_get_response": {
"skus": {
"sku": [
{
"sku_id": 123,
"price": "200.00",
"quantity": 50,
"properties": "颜色:红色;尺码:M",
"status": "normal"
},
{
"sku_id": 456,
"price": "220.00",
"quantity": 30,
"properties": "颜色:蓝色;尺码:L",
"status": "normal"
}
]
}
}
}
}

四、注意事项

  1. 权限申请
    确保应用已申请taobao.item.sku.get权限,部分接口需提交业务场景说明。
  2. 频率限制
    遵守淘宝API的调用频率规则(如每天100万次),避免触发限流。
  3. 错误处理
    添加异常捕获逻辑(如网络错误、签名错误),确保程序健壮性。
  4. 数据安全
    敏感信息(如App Secret)需加密存储,避免泄露。
  5. 文档更新
    定期查看万邦开放平台-文档中心,适应接口规则变化。

五、常见错误码

错误码描述
50远程服务错误
11API权限不足
15签名错误
26参数缺失或格式错误

通过以上步骤,您可以成功调用淘宝API获取商品SKU详情。如需进一步开发,建议结合具体业务需求参考官方文档。


http://www.kler.cn/a/611205.html

相关文章:

  • 前端学习笔记--CSS
  • vue vue3 走马灯Carousel
  • 如何 编译 px4
  • 物理环境与安全
  • 第十四届蓝桥杯大赛软件赛省赛C/C++ 大学 B 组(部分题解)
  • 业务相关
  • 大模型开发框架LangChain GO
  • 5.Excel:从网上获取数据
  • macbook电脑如何清理键盘防止误触
  • 脑启发式AI Agent:解锁人类大脑奥秘,迈向真正的通用人工智能(AGI)
  • AIDD-人工智能药物设计-计算驱动的药物再定位研究:策略、工具评测与典型案例分析
  • css基础-选择器
  • R --- Error in library(***) : there is no package called ‘***’ (服务器非root用户)
  • 【C++】内存模型分析
  • 三分钟掌握音频提取 | 在 Rust 中优雅地处理视频音频
  • 从 MySQL 到时序数据库 TDengine:Zendure 如何实现高效储能数据管理?
  • HTTP 协议中请求与响应的详细解析
  • CSS学习笔记
  • AI玩具迎来爆发式增长,IoT行业如何抓住机遇?
  • LSTM创新点不足?LSTM + Transformer融合模型引领Nature新突破