唯品会作为国内知名的品牌折扣电商平台,提供了丰富的商品信息接口,其中
vip.item_get 接口是获取商品详情的重要工具。本文将详细介绍如何使用该接口获取 VIP 商品的详细信息,并提供 Python 实现示例。一、接口核心能力
通过
vip.item_get 接口,开发者可以获取以下商品详情信息:- 商品基础信息:商品 ID、名称、价格、原价、折扣率、库存量。
- 视觉素材:主图、详情图 URL、视频链接。
- 属性细节:颜色、尺码、材质、适用场景。
- 营销数据:促销活动标签、限时折扣信息。
- 物流信息:发货地、预计送达时间。
二、获取与使用流程
(一)开发者账号注册
- 访问唯品会开放平台:完成企业或个人实名认证。
- 提交应用审核:需说明业务场景,如“店铺商品管理”。
(二)API 密钥申请
- 审核通过后生成:生成
AppKey和AppSecret。 - 示例密钥格式:Python
app_key = "YOUR_APP_KEY"app_secret = "YOUR_APP_SECRET" # 需严格保密
(三)接口调用示例
以下是使用 Python 调用
vip.item_get 接口的示例代码:Python
import requestsimport hashlibimport time# 构建请求参数api_url = "https://api-gw.onxxnd.cn/vip/item_get/"app_key = "YOUR_APP_KEY"app_secret = "YOUR_APP_SECRET"num_iid = "1710613157-6918711233889249157" # 商品ID# 生成签名timestamp = str(int(time.time()))sign_str = f"{app_key}{timestamp}{app_secret}"params = {
"key": app_key,
"num_iid": num_iid,
"sign": hashlib.md5(sign_str.encode()).hexdigest()}# 发送请求response = requests.get(api_url, params=params)if response.status_code == 200:
product_data = response.json()
print(f"商品名称:{product_data['result']['title']}")
print(f"当前价格:{product_data['result']['price']}元")
print(f"库存状态:{product_data['result']['stock']}件")else:
print(f"请求失败,错误码:{response.status_code}")三、接口参数说明
(一)公共参数
| 名称 | 类型 | 必须 | 描述 |
|---|---|---|---|
key | String | 是 | 调用 key(必须以 GET 方式拼接在 URL 中) |
secret | String | 是 | 调用密钥 |
api_name | String | 是 | API 接口名称(包括在请求地址中) |
cache | String | 否 | 默认 yes,将调用缓存的数据,速度比较快 |
result_type | String | 否 | 返回数据格式,默认为 json |
lang | String | 否 | 翻译语言,默认 cn 简体中文 |
version | String | 否 | API 版本 |
(二)请求参数
| 参数名 | 类型 | 说明 | 示例 |
|---|---|---|---|
item_id | String | 商品 ID | "123456789" |
fields | String | 指定返回字段,逗号分隔 | "item_id,title,price,stock" |
include_promotion | Boolean | 是否包含促销信息 | true |
include_spec | Boolean | 是否包含规格详情 | true |
include_brand | Boolean | 是否包含品牌信息 | true |
include_history_price | Boolean | 是否包含历史价格 | false(默认) |
region | String | 地区编码,影响库存和价格 | "110000"(北京) |
四、签名生成逻辑
唯品会开放平台采用 HMAC-SHA256 签名算法,步骤如下:
- 收集所有请求参数(不包含
sign),按参数名 ASCII 码升序排序。 - 拼接为
key=value格式的字符串,并用&连接。 - 使用
app_secret作为密钥,对拼接字符串进行 HMAC-SHA256 加密。 - 将加密结果进行 Base64 编码,得到签名值。
五、返回数据结构
典型的返回数据结构如下:
JSON
{
"result": {
"item_id": "123456789",
"title": "商品名称",
"price": "100.00",
"original_price": "200.00",
"discount": "5.0",
"stock": 100,
"sales_count": 50,
"brand": {
"brand_name": "品牌名称"
},
"sku_list": [
{
"specs": ["颜色:红色", "尺码:XL"],
"price": "120.00",
"stock": 30
}
],
"promotions": [
{
"name": "限时折扣"
}
]
}}六、应用场景
- 电商数据分析:提取价格、销量、分类等数据,分析市场趋势。
- 竞品监控:对比同类商品的价格、库存变化,优化定价策略。
- 应用开发:在 APP 或网站中展示商品详情,提升用户体验。
- 价格预警:实时监控商品价格,触发降价通知。
七、注意事项
- 调用频率限制:默认基础权限为 20 次/分钟,高级权限可修改为 100 次/分钟。
- 签名生成:确保签名生成逻辑正确,避免因签名错误导致请求失败。
- 数据隐私:不得存储用户敏感信息,遵守相关法律法规。
通过上述介绍和示例代码,开发者可以快速上手使用唯品会的
vip.item_get 接口,获取商品的详细信息,为电商运营和数据分析提供有力支持。