以下是针对微店商品详情 API 接口micro.item_get
的实例演示,包含完整的接口调用、数据解析及实战应用代码,助你快速掌握接口使用方法:
一. 接口核心功能
- 接口名称:
micro.item_get
- 功能描述:通过商品 ID 获取微店商品的详细信息,包括价格、库存、图片、描述、商家信息等
- 接口地址:
https://api.weidian.com/micro.item_get
- 请求方式:
GET
/POST
(推荐 POST)
二. 必选参数示例
def get_weidian_item(item_id, app_key, app_secret):
"""获取微店商品详情"""
params = {
"method": "micro.item_get",
"app_key": app_key,
"timestamp": get_current_time(),
"format": "json",
"v": "2.0",
"item_id": item_id, # 商品ID(必填)
"sign": generate_sign(params, app_secret) # 签名参数
}
return request_api(params)
三、接口响应数据解析
1. 完整响应示例(JSON)
{
"code": 200,
"msg": "success",
"data": {
"item_id": "123456789",
"title": "2024新款纯棉T恤 男女同款",
"short_title": "纯棉T恤 男女同款",
"price": 59.90,
"original_price": 79.90,
"stock": 128,
"sales": 2456,
"shop": {
"shop_id": "987654321",
"name": "XX服饰工厂店",
"level": "钻石卖家",
"location": "广东 广州"
},
"sku_info": [
{
"sku_id": "123456790",
"properties": "颜色:白色;尺码:S",
"price": 59.90,
"stock": 36
},
{
"sku_id": "123456791",
"properties": "颜色:黑色;尺码:M",
"price": 59.90,
"stock": 48
}
],
"images": [
"https://img.weidian.com/item/123456.jpg",
"https://img.weidian.com/item/123457.jpg"
],
"description": "100%纯棉面料,透气舒适,支持定制logo...",
"category": {
"id": 1001,
"name": "男装/T恤"
}
}
}
四、实战代码示例(完整流程)
1. 单商品详情获取
import requests
import json
class WeidianAPI:
def __init__(self, app_key, app_secret):
self.app_key = app_key
self.app_secret = app_secret
self.base_url = "https://api.weidian.com"
def generate_sign(self, params):
"""生成签名(同上,省略重复代码)"""
...
def get_current_time(self):
"""获取时间戳(同上,省略重复代码)"""
...
def request_api(self, params):
"""发送API请求"""
url = f"{self.base_url}/micro.item_get"
try:
response = requests.post(url, data=params, timeout=10)
response.raise_for_status()
return response.json()
except Exception as e:
print(f"请求异常: {str(e)}")
return {"code": -1, "msg": str(e)}
def get_item_detail(self, item_id):
"""获取商品详情"""
params = {
"method": "micro.item_get",
"app_key": self.app_key,
"timestamp": self.get_current_time(),
"format": "json",
"v": "2.0",
"item_id": item_id
}
params["sign"] = self.generate_sign(params)
return self.request_api(params)
# 使用示例
if __name__ == "__main__":
app_key = "YOUR_APP_KEY"
app_secret = "YOUR_APP_SECRET"
item_id = "123456789" # 替换为实际商品ID
api = WeidianAPI(app_key, app_secret)
response = api.get_item_detail(item_id)
item = parse_weidian_item(response)
if item:
print(f"商品名称: {item['title']}")
print(f"当前价格: {item['price']}元")
print(f"原价: {item['original_price']}元")
print(f"店铺名称: {item['shop_name']}")
五、注意事项与合规建议
- 接口权限申请: 需在微店开放平台注册开发者账号,创建应用后获取app_key和app_secret
- 反爬与限流应对: 控制请求频率(建议间隔≥1 秒),避免触发限流(错误码 429) 随机更换 User-Agent,模拟真实浏览器请求
通过以上实例,可快速实现微店商品详情的获取与分析,适用于选品、比价、库存监控等业务场景。建议结合缓存机制和异常处理,提升系统稳定性和响应速度。