news 2026/4/22 8:07:19

1688 官方接口实用整理:常用接口清单 + 字段对照 + 可直接调试代码

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
1688 官方接口实用整理:常用接口清单 + 字段对照 + 可直接调试代码

下面全部按照1688 开放平台真实规范来写,内容偏实操、通俗易懂,没有花哨术语,拿到手就能对接项目用。


一、1688 常用接口清单(业务最常用)

主要分三类:商品基础信息、商品评论、店铺商品列表,基本覆盖选品、比价、竞品分析、采购分析场景。

  1. 商品基本信息接口获取:标题、主图、价格、sku 规格、库存、发货地、商家信息、是否实力商家等。

  2. 商品评论列表接口获取:评分、评论文本、评论时间、是否追评、买家秀图片、规格属性。

  3. 店铺商品列表接口获取:店铺下所有商品 ID、标题、价格、销量、主图、上架时间。

  4. 商品搜索接口关键词搜索、按类目搜索、价格区间、销量排序、是否包邮等筛选。

  5. 商品库存 / 发货信息接口起批量、交期、是否现货、发货时效。


二、通用字段含义对照表(一看就懂)

1. 公共返回字段(所有接口都可能出现)

  • success:是否调用成功(true /false)
  • error_code:错误码,用于排查问题
  • error_msg:错误提示文案
  • total:总条数(分页用)
  • current_page:当前页码
  • page_size:每页条数

2. 商品基础关键字段

  • offer_id/product_id:商品 ID(最核心)
  • subject:商品标题
  • price:单价(注意:1688 多为批发价)
  • quantity:可售库存 / 起订量
  • unit:计量单位(个、件、米等)
  • images:商品主图列表
  • sku_info:规格信息(颜色、尺寸、材质)
  • seller_name:店铺名称
  • seller_id:店铺 ID
  • delivery_place:发货地
  • sale_count:销量

3. 评论关键字段

  • review_id:评论 ID
  • score:评分(1-5 星)
  • content:评论文字内容
  • gmt_create:评论时间
  • is_additional:是否追评
  • spec_info:评论对应的购买规格
  • images:买家晒图

三、完整可运行 Python 接入代码(直接复制改 Key 即可)

下面这套是通用结构,适配 1688 官方签名规则,包含:

  • 签名生成
  • 公共参数封装
  • 商品信息 + 评论 + 店铺商品 三个接口示例
  • 自动延时、异常捕获、简单解析

python

运行

import hashlib import requests import time from urllib.parse import urlencode # ====================== 【请在这里填写你的开发者信息】 ====================== APP_KEY = "你申请的AppKey" APP_SECRET = "你申请的AppSecret" API_GATEWAY = "https://api.1688.com/openapi" # ========================================================================== def sign_params(params, app_secret): """ 1688 标准签名函数 """ # 按 key 字典序排序 sorted_items = sorted( [(k, v) for k, v in params.items() if k != "sign" and v is not None] ) # 拼接 raw_str = app_secret for k, v in sorted_items: raw_str += f"{k}{v}" raw_str += app_secret # MD5 大写 md5 = hashlib.md5(raw_str.encode("utf-8")).hexdigest().upper() return md5 def request_1688_api(method, params_dict): """ 统一请求入口 """ # 公共参数 common = { "method": method, "app_key": APP_KEY, "timestamp": int(time.time() * 1000), "format": "json", "v": "2.0", } # 合并参数 params = {**common, **params_dict} # 签名 params["sign"] = sign_params(params, APP_SECRET) # 请求 try: url = f"{API_GATEWAY}?{urlencode(params)}" resp = requests.get(url, timeout=10) resp.raise_for_status() return resp.json() except Exception as e: print("请求异常:", str(e)) return None # ------------------------------ # 1. 获取商品详情 # ------------------------------ def get_product_detail(offer_id): method = "alibaba.product.get" params = { "offer_id": offer_id, } data = request_1688_api(method, params) if data and data.get("success"): return data.get("result", {}) return None # ------------------------------ # 2. 获取商品评论 # ------------------------------ def get_product_reviews(offer_id, page_no=1, page_size=20): method = "alibaba.product.reviews" params = { "offer_id": offer_id, "page_no": page_no, "page_size": page_size, } data = request_1688_api(method, params) if data and data.get("success"): return data.get("result", {}).get("reviews", []) return [] # ------------------------------ # 3. 获取店铺商品列表 # ------------------------------ def get_shop_products(seller_id, page_no=1, page_size=20): method = "alibaba.seller.products.get" params = { "seller_id": seller_id, "page_no": page_no, "page_size": page_size, } data = request_1688_api(method, params) if data and data.get("success"): return data.get("result", {}).get("products", []) return [] # ------------------------------ # 测试调用 # ------------------------------ if __name__ == "__main__": # 替换成真实商品ID test_offer_id = "703301234567" print("===== 商品详情 =====") detail = get_product_detail(test_offer_id) if detail: print("标题:", detail.get("subject")) print("价格:", detail.get("price")) print("\n===== 商品评论 =====") reviews = get_product_reviews(test_offer_id, page_no=1) for r in reviews[:5]: print(f"{r.get('score')}星 | {r.get('content')[:50]}")

四、接口调试必看心得(实战踩坑总结)

1. 关于权限

  • 个人账号能调的接口非常有限,想稳定用必须企业认证 + 诚信通
  • 接口不是默认开通,需要在开放平台逐个申请权限,有些要审核。
  • 不要跨场景乱用,比如用商品接口去爬全平台数据,容易被限流。

2. 关于签名报错(最常见)

  • 时间戳必须是13 位毫秒,用秒级必错。
  • 参数里不要带sign参与签名。
  • None值的参数不要传,会导致签名不一致。

3. 关于频率与限流

  • 不要连续快速循环调用,每页 sleep (1~2)秒最稳。
  • 遇到429system busy,立刻停 5~10 分钟再试。
  • 单日大量抓取建议分时段、分账号、分 IP

4. 关于数据结构

  • 1688 很多商品是多规格、多批发价,不要只取一个 price 字段。
  • 评论可能为空、追评可能为空、图片可能为空,代码一定要做判空。
  • 店铺商品列表翻页超过几十页容易返回空,建议用时间范围分批拉。

5. 业务使用心得

  • 做选品:优先抓price + sale_count + delivery_place
  • 做评论分析:重点抓score + content + spec_info,可做口碑标签。
  • 做店铺监控:用店铺商品接口定期拉取上新和价格变动。

五、你接下来可以直接做的事

  1. 把代码里的APP_KEYAPP_SECRET换成你申请的。
  2. 填入真实商品 ID 测试,看是否能正常返回标题、价格、评论。
  3. 在此基础上扩展:批量抓取、保存 Excel、定时任务、数据分析。
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/22 8:06:25

msvcp140_1.dll文件丢失找不到怎么办? 免费下载方法分享

在使用电脑系统时经常会出现丢失找不到某些文件的情况,由于很多常用软件都是采用 Microsoft Visual Studio 编写的,所以这类软件的运行需要依赖微软Visual C运行库,比如像 QQ、迅雷、Adobe 软件等等,如果没有安装VC运行库或者安装…

作者头像 李华
网站建设 2026/4/22 8:03:40

Jasminum终极指南:5分钟掌握Zotero中文文献自动管理技巧

Jasminum终极指南:5分钟掌握Zotero中文文献自动管理技巧 【免费下载链接】jasminum A Zotero add-on to retrive CNKI meta data. 一个简单的Zotero 插件,用于识别中文元数据 项目地址: https://gitcode.com/gh_mirrors/ja/jasminum 还在为手动整…

作者头像 李华
网站建设 2026/4/22 7:59:10

Gradle构建缓存避坑指南:从本地配置到Docker部署Cache Node的完整实践

Gradle构建缓存避坑指南:从本地配置到Docker部署Cache Node的完整实践 在持续集成与交付(CI/CD)的现代开发流程中,构建速度直接影响团队效率。Gradle构建缓存作为一项被低估的加速利器,理论上能减少90%的重复构建时间&…

作者头像 李华
网站建设 2026/4/22 7:55:15

终极Intel/AMD硬件调优指南:解锁被封印的处理器性能潜力

终极Intel/AMD硬件调优指南:解锁被封印的处理器性能潜力 【免费下载链接】Universal-x86-Tuning-Utility Unlock the full potential of your Intel/AMD based device. 项目地址: https://gitcode.com/gh_mirrors/un/Universal-x86-Tuning-Utility 你是否曾为…

作者头像 李华
网站建设 2026/4/22 7:52:20

STM32实战:NB-IoT设备在天翼物联AIoT平台的一站式接入与数据上云

1. 硬件准备与环境搭建 第一次接触NB-IoT设备开发时,我花了两周时间才搞明白硬件选型的门道。STM32作为主控芯片的优势很明显:性价比高、生态完善、资料丰富。我常用的组合是STM32F103C8T6最小系统板BC28 NB-IoT模块,整套成本不到100元&#…

作者头像 李华
网站建设 2026/4/22 7:49:01

突破百度网盘限速:3步获取真实直链的终极解决方案

突破百度网盘限速:3步获取真实直链的终极解决方案 【免费下载链接】baidu-wangpan-parse 获取百度网盘分享文件的下载地址 项目地址: https://gitcode.com/gh_mirrors/ba/baidu-wangpan-parse 还在为百度网盘的下载速度烦恼吗?非会员用户的下载速…

作者头像 李华