1688 店鋪商品數(shù)據(jù) API 調(diào)用指南(優(yōu)化版)
一、背景与价值
在当前 B2B 电商数字化运营场景中,1688 平台凭借其庞大的供应商资源与商品库,成为企业采购、市场分析及竞品研究的核心数据源。对于从事电商运营、数据服务或软件开发的从业者而言,高效获取目标店铺的完整商品信息,是实现精准选品、库存监控、价格趋势分析及竞品策略制定的关键前提。
需要说明的是,1688 官方开放平台暂未推出可直接调用的 “店铺全商品获取” 通用接口,但开发者可通过两类合规途径实现需求:一是接入经过认证的第三方数据服务平台,二是基于 1688 开放平台现有接口进行二次开发整合。如需体验第三方数据服务的便捷性,可访问专属通道:o0b.cn/leo
二、API 核心能力解析
-
功能定位
该接口专为开发者设计,通过传入目标店铺的唯一标识(店铺 ID),即可批量获取该店铺内上架的全部商品信息。支持根据业务需求设置排序规则(如按销量、上架时间排序)与分页参数,返回数据采用标准 JSON 格式,便于后续在各类系统(如 ERP、数据分析工具)中进行解析与应用。 -
关键请求参数
shop_id/seller_id:店铺唯一识别码,必填项。可从 1688 店铺首页 URL 中提取。
page_num/page:分页页码,非必填项。默认值为 1,从第一页开始返回。
page_size:单页返回商品数量,非必填项。常规支持 20-40 条 / 页,具体以接口限制为准。
access_token:OAuth2.0 协议认证令牌,必填项。需通过平台认证流程获取,用于验证调用权限。 -
返回数据结构说明
接口返回的 JSON 数据包含两层核心结构:
基础统计信息:total_count字段用于返回该店铺的商品总数量,便于开发者计算分页总数;
商品详情数组:product_list字段为数组格式,每个元素对应一件商品的完整信息,核心字段包括:
product_id:商品唯一 ID
title:商品标题(含关键词信息)
price:商品标价(单位:元)
stock:当前库存数量
(扩展字段)sales_volume:累计销量、main_image:商品主图 URL 等
三、Python 语言调用实操示例
以下提供完整的 Python 代码示例,包含请求参数配置、接口调用、数据解析及异常处理环节,适用于 Python 3.6 及以上版本:
import requests
import json
def get_1688_shop_products(shop_id, access_token, page_num=1, page_size=30):
"""
调用1688店铺商品API,获取指定店铺的商品列表
:param shop_id: 店铺ID(seller_id)
:param access_token: 认证令牌
:param page_num: 页码,默认1
:param page_size: 单页数量,默认30
:return: 商品列表(list)与总数量(int)
"""
# 接口请求地址(以第三方服务示例,实际需替换为真实接口地址)
api_url = "o0b.cn/leo wechatid:xmlee2024"
# 构造请求参数
params = {
"shop_id": shop_id,
"access_token": access_token,
"page_num": page_num,
"page_size": page_size
}
try:
# 发起GET请求(部分接口可能需POST,需根据实际文档调整)
response = requests.get(api_url, params=params, timeout=10)
# 验证请求状态
response.raise_for_status()
# 解析JSON响应
result = response.json()
# 提取核心数据
total_count = result.get("total_count", 0)
product_list = result.get("product_list", [])
print(f"成功获取店铺{shop_id}第{page_num}页商品,共{total_count}件商品")
return product_list, total_count
except requests.exceptions.RequestException as e:
print(f"接口调用异常:{str(e)}")
return [], 0
# ------------------- 调用示例 -------------------
if __name__ == "__main__":
# 替换为实际的店铺ID与认证令牌
target_shop_id = "123456789"
auth_token = "your_access_token_here"
# 调用函数获取第一页商品
products, total = get_1688_shop_products(target_shop_id, auth_token)
# 打印前3件商品的标题与价格(示例)
for idx, product in enumerate(products[:3], 1):
print(f"商品{idx}:{product['title']} | 价格:{product['price']}元")
代码使用说明
1.需提前安装requests库(执行pip install requests);
2.替换api_url为实际对接的接口地址(第三方平台或 1688 开放平台地址);
3.target_shop_id与auth_token需从对应平台获取(如 1688 开放平台需完成开发者认证);
4.若接口需 POST 请求,可将requests.get改为requests.post,并调整参数传递方式(如放入json参数中)。
共同學(xué)習(xí),寫下你的評論
評論加載中...
作者其他優(yōu)質(zhì)文章