首页 > 大数据 > 数据挖掘 > 淘宝/天猫获得商品详情 API 返回值说明
淘宝/天猫的商品详情API允许开发者通过编程方式获取特定商品的详细信息。然而,需要注意的是,淘宝/天猫的API通常对外部开发者有一定的限制,并且需要开发者在淘宝开放平台(或天猫开放平台)注册并获取API权限和密钥。
以下是对淘宝/天猫商品详情API返回值的详细说明,以及一个Python示例代码(请注意,由于API的具体细节可能会随时间而变化,以下信息是基于一般经验的概述)。
当调用淘宝/天猫商品详情API时,通常会返回一个结构化的JSON对象,其中包含了商品的详细信息。以下是一个典型的返回值结构及其字段含义:
json复制代码
|
|
{ |
|
|
"request_id": "请求的唯一标识符", |
|
|
"tmall_trade_item": { // 如果是天猫商品,这个字段会包含天猫商品的详细信息 |
|
|
"item": { |
|
|
"num_iid": "商品ID", // 商品的唯一标识符 |
|
|
"title": "商品标题", // 商品标题 |
|
|
"pic_url": "商品主图URL", // 商品主图链接 |
|
|
"small_images": [ // 商品的小图列表 |
|
|
"http://img.url1.com", |
|
|
"http://img.url2.com" |
|
|
// ... |
|
|
], |
|
|
"reserve_price": "一口价", // 商品的一口价(如果设置了的话) |
|
|
"price": "当前价", // 商品的当前售价 |
|
|
"total_fee": "总价", // 包括运费在内的总价(如果API提供了这个字段) |
|
|
"skus": [ // 商品的SKU列表 |
|
|
{ |
|
|
"price": "SKU价格", |
|
|
"quantity": "SKU库存", |
|
|
"outer_id": "SKU外部ID", |
|
|
"properties": [ // SKU的属性列表 |
|
|
{ |
|
|
"property_name": "属性名", |
|
|
"property_value": "属性值" |
|
|
}, |
|
|
// ... |
|
|
] |
|
|
}, |
|
|
// ... |
|
|
], |
|
|
"props": [ // 商品的属性列表(可能不同于SKU属性) |
|
|
{ |
|
|
"name": "属性名", |
|
|
"value": "属性值" |
|
|
}, |
|
|
// ... |
|
|
], |
|
|
"desc": "商品描述", // 商品描述信息(可能是HTML格式) |
|
|
"detail_url": "商品详情页URL", // 商品详情页链接 |
|
|
"seller_id": "卖家ID", // 卖家唯一标识符 |
|
|
"seller_nick": "卖家昵称", // 卖家昵称 |
|
|
"location": "发货地", // 商品发货地 |
|
|
"post_fee": "邮费", // 商品的邮费 |
|
|
"type": "商品类型", // 商品类型(如:天猫、淘宝等) |
|
|
"props_name": "商品属性名称列表", // 商品属性的名称列表(可能是字符串形式,具体取决于API返回格式) |
|
|
"props_img": { // 商品属性图片(如果有的话) |
|
|
"prop_pic_url": "属性图片URL" |
|
|
}, |
|
|
"video_url": "商品视频URL", // 商品视频链接(如果有的话) |
|
|
"service_list": [ // 商品提供的服务列表(如:七天无理由退换等) |
|
|
{ |
|
|
"service_code": "服务代码", |
|
|
"service_name": "服务名称" |
|
|
}, |
|
|
// ... |
|
|
], |
|
|
// 可能还包含其他商品相关的字段,如库存预警、是否包邮、是否预售等 |
|
|
}, |
|
|
// 可能还包含其他天猫商品相关的字段,如店铺信息、优惠券信息等 |
|
|
}, |
|
|
// 如果是淘宝商品,则可能返回taobao_trade_item等类似结构的字段,具体取决于API版本和请求参数 |
|
|
"error_code": "0", // 错误代码(0通常表示成功) |
|
|
"msg": "success", // 错误信息或操作结果描述 |
|
|
// 可能还包含其他字段,如调用次数限制、API版本信息等 |
|
|
} |
以下是一个使用Python调用淘宝/天猫商品详情API并解析返回值的示例代码(请注意,这里的代码是一个简化的示例,并且由于API的限制,您可能需要先获取API权限和密钥,并且可能需要使用淘宝开放平台提供的SDK或工具来生成签名等)。
python复制代码
|
|
import requests |
|
|
import hashlib |
|
|
import time |
|
|
import json |
|
|
|
|
|
# 设置API密钥和请求参数(注意:这里只是示例,实际使用时需要替换为您的API密钥和正确的请求参数) |
|
|
APP_KEY = 'YOUR_APP_KEY' |
|
|
APP_SECRET = 'YOUR_APP_SECRET' |
|
|
ITEM_ID = 'YOUR_ITEM_ID' # 要查询的商品ID |
|
|
|
|
|
# 生成签名(具体签名算法可能因API而异,这里只是示例) |
|
|
def generate_sign(params): |
|
|
params_str = '&'.join(['{}={}'.format(k, v) for k, v in sorted(params.items()) if k not in ['sign']]) |
|
|
sign_str = f'{APP_SECRET}&{params_str}' |
|
|
m = hashlib.md5() |
|
|
m.update(sign_str.encode('utf-8')) |
|
|
return m.hexdigest().upper() |
|
|
|
|
|
# 构建请求参数 |
|
|
params = { |
|
|
'method': 'taobao.item.get', # API接口名称(具体名称可能因API版本而异) |
|
|
'app_key': APP_KEY, |
|
|
'timestamp': int(time.time()), |
|
|
'v': '2.0', # API版本号 |
|
|
'fields': 'num_iid,title,pic_url,price,skus,props,desc,detail_url,seller_id,seller_nick,location,post_fee', # 需要返回的字段(用逗号分隔) |
|
|
'item_id': ITEM_ID, # 商品ID |
|
|
# 可能还需要其他参数,如会话信息、用户身份等,根据API文档添加 |
|
|
} |
|
|
params['sign'] = generate_sign(params) |
|
|
|
|
|
# 发送HTTP请求并获取响应 |
|
|
url = 'https://eco.taobao.com/router/rest' # 替换为实际的API请求地址(注意:这里是一个示例地址) |
|
|
response = requests.get(url, params=params) |
|
|
|
|
|
# 解析响应数据 |
|
|
if response.status_code == 200: |
|
|
data = response.json() |
|
|
if 'tmall_trade_item' in data: |
|
|
item = data['tmall_trade_item']['item'] |
|
|
# 打印商品信息(根据实际需求选择打印的字段) |
|
|
print(f'商品ID: {item["num_iid"]}') |
|
|
print(f'商品标题: {item["title"]}') |
|
|
print(f'商品主图URL: {item["pic_url"]}') |
|
|
print(f'商品价格: {item["price"]}') |
|
|
# ... 打印其他需要的字段 |
|
|
elif 'taobao_trade_item' in data: |
|
|
# 如果是淘宝商品,则处理淘宝商品的字段(具体结构可能不同于天猫商品) |
|
|
pass |
|
|
else: |
|
|
print('未找到商品信息') |
|
|
else: |
|
|
print('API请求失败:', response.status_code, response.text) |
fields字段指定需要返回的字段,以减少不必要的数据传输和解析时间。请注意,由于淘宝/天猫的API可能会随着时间的推移而发生变化,因此建议您在开发过程中始终参考最新的API文档,并密切关注任何可能的更新或变更。
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/70042344/viewspace-3070177/ ,如需转载,请注明出处,否则将追究法律责任。