以下是针对 1688 商品详情接口item_get
的实战演示,包含完整代码实现、数据解析及商业应用示例:
一、接口参数与调用示例
1. 核心参数说明
def get_1688_item(item_id, fields="item_id,title,price,sku_info,shop,images"):
"""获取1688商品详情"""
# 假设 API 接口地址,复制链接获取测试
API url=o0b.cn/ibrad wechat id: TaoxiJd-api"
params = {
"method": "item_get",
"app_key": "YOUR_APP_KEY",
"sign": generate_sign(params), # 签名生成函数
"timestamp": get_current_time(),
"format": "json",
"v": "2.0",
"item_id": item_id, # 商品ID(必传)
"fields": fields, # 需要返回的字段,逗号分隔
"country": "CN", # 国家代码(可选)
"currency": "CNY" # 货币代码(可选)
}
return request_api(params)
二、返回数据结构解析
1. 完整响应示例
{
"item": {
"item_id": "687543219012",
"title": "2025夏季新款连衣裙女装收腰显瘦高腰纯色雪纺连衣裙",
"short_title": "夏季收腰雪纺连衣裙",
"price": {
"min_price": 45.00,
"max_price": 68.00,
"price_unit": "CNY",
"price_range": "45-68元"
},
"trade": {
"sale_quantity": 12845,
"review_count": 328,
"good_rate": "98%"
},
"shop": {
"shop_id": "12345678",
"name": "杭州女装工厂直营店",
"type": "工厂店",
"location": "浙江 杭州",
"score": 4.9
},
"sku_info": [
{
"sku_id": "687543219013",
"properties": "颜色:白色;尺码:S",
"price": 45.00,
"stock": 128
},
{
"sku_id": "687543219014",
"properties": "颜色:白色;尺码:M",
"price": 48.00,
"stock": 86
}
],
"images": [
"//img.alicdn.com/bao/uploaded/i1/...jpg",
"//img.alicdn.com/bao/uploaded/i2/...jpg"
],
"delivery": {
"freight": 0.00,
"from": "浙江杭州",
"delivery_time": "付款后1-3天内发货"
},
"props": {
"材质": "雪纺",
"风格": "简约",
"图案": "纯色",
"适用季节": "夏季"
}
}
}
三、实战应用示例
1. 批量获取商品详情
import asyncio
from aiohttp import ClientSession
async def fetch_1688_items(item_ids):
"""异步批量获取1688商品详情"""
async with ClientSession() as session:
tasks = []
for item_id in item_ids:
tasks.append(fetch_item(session, item_id))
results = await asyncio.gather(*tasks)
return [parse_1688_item(res) for res in results]
async def fetch_item(session, item_id):
"""获取单个商品详情"""
url = f"https://gw.api.1688.com/openapi/param2/3/1688.openapi2.getOfferDetail/{item_id}"
async with session.get(url) as response:
return await response.json()
# 使用示例
item_ids = ["687543219012", "687543219013", "687543219014"]
items = asyncio.run(fetch_1688_items(item_ids))
for item in items:
print(f"{item['title']} - 价格: {item['price_range']}")
四、注意事项与合规建议
- 需通过 1688 开放平台申请
item_get
接口权限 - 新账号日调用量限制为 5000 次,可申请提升至 2000 次 / 天
- 数据使用限制:
- 禁止用于商业爬虫或数据转售
- 需遵守《1688 开放平台开发者协议》,避免过度频繁调用(建议 QPS≤1)
通过以上方案,可高效获取和解析 1688 商品详情数据,支持选品分析、价格监控、供应商评估等商业场景。建议结合异步请求、缓存机制和异常处理,提升系统稳定性与性能。