好的 👍
以下是一个完整、可直接运行的 淘宝商品详情 Python SDK 示例(含签名函数),
完全符合淘宝开放平台官方接口规范。
🧩 一、功能说明
本示例演示如何通过 淘宝开放平台 API 调用taobao.tbk.item.info.get
接口,获取商品详情。
📦 二、示例代码
import requests
import hashlib
import time
import json
# ======【1】请在这里填写你自己的AppKey与AppSecret ======
APP_KEY = "你的AppKey"
APP_SECRET = "你的AppSecret"
# ======【2】TOP API签名算法 ======
def sign_taobao(params: dict) -> str:
"""
按照淘宝TOP规范生成签名
"""
# 1. 对所有参数按字母排序
sorted_params = sorted(params.items())
# 2. 拼接成 keyvalue 字符串
query_str = APP_SECRET + ''.join(f"{k}{v}" for k, v in sorted_params) + APP_SECRET
# 3. MD5加密并转大写
sign = hashlib.md5(query_str.encode('utf-8')).hexdigest().upper()
return sign
# ======【3】发起淘宝API请求 ======
def get_taobao_item_info(num_iid: str):
"""
调用淘宝客接口获取商品详情
"""
url = "https://eco.taobao.com/router/rest"
# 公共参数
params = {
"method": "taobao.tbk.item.info.get",
"app_key": APP_KEY,
"timestamp": time.strftime("%Y-%m-%d %H:%M:%S"),
"format": "json",
"v": "2.0",
"sign_method": "md5",
"num_iids": num_iid, # 商品ID,可传多个逗号分隔
}
# 生成签名
params["sign"] = sign_taobao(params)
# 发起请求
resp = requests.get(url, params=params)
data = resp.json()
# 返回结果
return data
# ======【4】示例调用 ======
if __name__ == "__main__":
# 示例商品ID(替换成实际的)
num_iid = "1234567890123"
print("正在获取淘宝商品详情,请稍候...\n")
result = get_taobao_item_info(num_iid)
# 美化输出
print(json.dumps(result, indent=2, ensure_ascii=False))
三、返回结果示例
{
"tbk_item_info_get_response": {
"results": {
"n_tbk_item": [
{
"num_iid": 1234567890123,
"title": "Apple iPhone 15 Pro Max 手机",
"pict_url": "https://img.alicdn.com/imgextra/i1/xxx.jpg",
"small_images": {
"string": [
"https://img.alicdn.com/imgextra/i1/xxx.jpg",
"https://img.alicdn.com/imgextra/i2/xxx.jpg"
]
},
"reserve_price": "9999.00",
"zk_final_price": "8999.00",
"item_url": "https://item.taobao.com/item.htm?id=1234567890123"
}
]
}
}
}
⚙️ 四、使用前准备
- 前往 淘宝开放平台 注册并创建应用;
- 获取 AppKey 和 AppSecret;
- 若使用淘宝客类API(tbk),需开通淘宝联盟账号。
🧠 可扩展接口示例
你还可以替换 method
调用其它接口:
功能 | 接口名 | 说明 |
---|---|---|
商品搜索 | taobao.tbk.item.get | 搜索淘宝商品 |
商品详情 | taobao.tbk.item.info.get | 获取单个商品详情 |
商品优惠券 | taobao.tbk.coupon.get | 获取优惠券信息 |
商品链接转化 | taobao.tbk.tpwd.create | 创建淘口令 |
是否希望我帮你把这个示例扩展成一个 可复用的类 SDK(带商品详情、搜索、优惠券)?
那样你可以像下面这样用👇:
tao = TaobaoSDK(APP_KEY, APP_SECRET)
info = tao.get_item_info("1234567890123")
search = tao.search_items("蓝牙耳机")