以下是淘系 API 接口獲取商品詳情與 SKU 數據的全流程解決方案,結合最新政策與技術實現,助您高效完成數據對接:
一、核心接口與權限配置
1. 商品詳情接口(taobao.item.get)
- 功能:獲取商品基礎信息、價格、庫存、屬性等
- 關鍵參數:
{
"num_iid": "633123456789", # 商品ID
"fields": "num_iid,title,price,desc,skus", # 按需篩選字段
"is_promotion": 1 # 獲取促銷價
}
- 返回示例:
{
"item": {
"num_iid": "633123456789",
"title": "智能手表",
"price": "1999.00",
"desc": "<html>商品詳情...</html>",
"skus": {
"sku": [
{
"sku_id": "123456",
"properties": "1627207:28332;1627208:32345", # 屬性組合ID
"quantity": 100,
"specs": [{"name": "顏色", "value": "黑色"}, {"name": "尺寸", "value": "42mm"}]
}
]
}
}
}
2. SKU 詳情接口(taobao.item.sku.get)
- 功能:獲取商品 SKU 的庫存、價格、屬性值等
- 關鍵參數:
{ "num_iid": "633123456789", "sku_id": "123456", "fields": "sku_id,price,quantity,specs" }
二、開發流程與技術實現
1. 權限申請與認證
- 注冊淘寶平臺賬號
- 創建應用:選擇 “電商后臺” 類目,開通后臺接口
獲取憑證:在應用管理頁面獲取App Key和App Secret
# 獲取授權碼(Server-side flow) auth_url = f"https://oauth.taobao.com/authorize?client_id={app_key}&redirect_uri={redirect_uri}&response_type=code" # 獲取訪問令牌 token_url = "https://oauth.taobao.com/token" data = { "grant_type": "authorization_code", "code": code, "client_id": app_key, "client_secret": app_secret, "redirect_uri": redirect_uri } response = requests.post(token_url, data=data) access_token = response.json()["access_token"]
2. API 調用示例(Python)
import requests import json def get_item_detail(num_iid, app_key, app_secret): url = "https://eco.taobao.com/router/rest" params = { "method": "taobao.item.get", "app_key": app_key, "timestamp": "2025-04-06 12:00:00", "format": "json", "v": "2.0", "sign_method": "hmac", "num_iid": num_iid, "fields": "num_iid,title,price,desc,skus" } # 生成簽名 params["sign"] = generate_sign(params, app_secret) response = requests.get(url, params=params) return json.loads(response.text) def generate_sign(params, secret): # 簽名算法實現(參考淘寶開放平臺文檔) sorted_params = sorted(params.items(), key=lambda x: x[0]) query = "".join([f"{k}{v}" for k, v in sorted_params]) return hmac.new(secret.encode(), query.encode(), hashlib.md5).hexdigest().upper()
三、數據解析與業務應用
1. SKU 屬性映射
# 解析屬性組合ID def parse_sku_properties(props_str): props = {} for prop in props_str.split(";"):
prop_id, value_id = prop.split(":") # 通過taobao.itemprops.get接口獲取屬性名稱
prop_name = get_prop_name(prop_id)
props[prop_name] = get_prop_value(value_id) return props def get_prop_name(prop_id):
# 調用屬性接口獲取名稱 pass def get_prop_value(value_id): # 調用屬性值接口獲取名稱 pass
四、性能優化與合規建議
1. 高頻調用優化
- 批量查詢:使用
taobao.items.list.get
接口一次性獲取多個商品 - 緩存機制:Redis 緩存熱門商品數據(建議過期時間 30 分鐘)
- 異步請求:使用
asyncio
并發處理多個 API 請求
2. 合規性要求
- 數據隱私:不得存儲用戶敏感信息(如買家評論中的手機號)
- 版權保護:圖片需通過 CDN 代理引用,避免直接使用淘寶源鏈接
- 調用頻率:普通開發者每日調用上限 50000 次,建議購買 “獨立資源池” 權限
五、最新政策與工具支持
- 官方工具:
- API Explorer:在線調試接口,生成代碼示例
- 開放平臺 SDK:支持 Java、Python、C# 等語言,簡化流程
通過以上方案,您可高效集成淘系 API,實現商品數據自動化管理。建議定期查看淘寶注冊平臺獲取最新接口動態,并使用阿里云日志服務監控 API 調用情況,確保系統穩定運行。