当前位置: 首页 > news >正文

1688获得商品类目调取商品榜单

获取商品类目 ID(alibaba.category.get

该接口用于拉取 1688 全量类目树,获取目标类目的唯一categoryId,是调用榜单接口的前提。

1. 接口基础信息
  • 请求地址:https://gw.open.1688.com/openapi/param2/2/portals.open/api/getCategory
  • 请求方式:GET/POST
  • 数据格式:JSON
  • 频率限制:单应用 QPS≤10,日调用≤5 万次,建议本地缓存(更新周期≥24 小时)
2. 核心请求参数
参数名类型是否必填说明
methodString固定值:alibaba.category.get
app_keyString开放平台分配的应用 ID
timestampLong13 位 Unix 时间戳(毫秒级)
formatString固定值:json
vString固定值:2.0
sign_methodString固定值:md5
signString按规则生成的签名
3. 返回核心字段
字段名类型说明
categoryIdLong类目唯一 ID(调用榜单接口的核心参数)
nameString类目中文名称
levelInt类目层级(1-5 级,1 级为顶级类目)
parentIdLong父类目 ID
isLeafBoolean是否为叶子类目(true不可下钻)
childrenArray子类目列表(递归结构)
4. Python 调用示例

python

运行

import requests import hashlib import time # 配置凭证 app_key = "你的app_key" app_secret = "你的app_secret" url = "https://gw.open.1688.com/openapi/param2/2/portals.open/api/getCategory" # 构造基础参数 params = { "method": "alibaba.category.get", "app_key": app_key, "timestamp": str(int(time.time() * 1000)), "format": "json", "v": "2.0", "sign_method": "md5" } # 生成签名 def generate_sign(params, secret): param_str = "".join([f"{k}{v}" for k, v in sorted(params.items())]) sign_str = secret + param_str + secret return hashlib.md5(sign_str.encode()).hexdigest().upper() params["sign"] = generate_sign(params, app_secret) # 发送请求 response = requests.get(url, params=params) category_data = response.json() # 解析类目树(递归打印,提取目标类目ID) def parse_category(categories, level=0): for cat in categories: print(f"{' '*level}[L{cat['level']}] {cat['name']} (ID:{cat['categoryId']})") if "children" in cat and cat["children"]: parse_category(cat["children"], level + 1) # 执行解析 if "result" in category_data and "categories" in category_data["result"]: parse_category(category_data["result"]["categories"])

三、步骤 2:调取类目商品榜单(product.topList.query

通过步骤 1 获取的categoryId,调用该接口获取指定类目下的商品榜单,支持多类型、多周期筛选。

1. 接口基础信息
  • 请求地址:https://gw.open.1688.com/openapi/param2/1/com.alibaba.product/product.topList.query
  • 请求方式:GET/POST
  • 数据格式:JSON
  • 数据更新:每小时更新,企业认证用户响应≤300ms
2. 核心请求参数
参数名类型是否必填说明
methodString固定值:product.topList.query
app_keyString应用 ID
timestampLong13 位时间戳
formatStringjson
vString2.0
sign_methodStringmd5
signString签名
categoryIdLong步骤 1 获取的类目 ID(支持 1-5 级)
rankTypeString榜单类型:complex(综合榜)、hot(热销榜)、goodPrice(好价榜)、anchorHot(主播热卖榜)、anchorNew(主播新兴榜)、anchorRecommend(主播热推榜)、VNHot(越南热销榜)、VNTrend(越南趋势榜)
pageNoInt页码,默认 1
pageSizeInt每页条数,默认 20,最大 50
3. 返回核心字段
字段名类型说明
offerIdLong商品 ID
titleString商品标题
priceString商品价格(区间 / 单价)
saleCountInt销量
imageUrlString商品主图 URL
categoryIdLong商品所属类目 ID
sellerIdLong卖家 ID
evaluateScoreFloat商品评分
rankInt榜单排名
4. Python 调用示例

python

运行

# 沿用步骤1的凭证与签名函数 target_category_id = 1031918 # 替换为步骤1获取的目标类目ID rank_type = "hot" # 热销榜,可按需替换 # 构造榜单请求参数 rank_params = { "method": "product.topList.query", "app_key": app_key, "timestamp": str(int(time.time() * 1000)), "format": "json", "v": "2.0", "sign_method": "md5", "categoryId": target_category_id, "rankType": rank_type, "pageNo": 1, "pageSize": 20 } # 生成签名并请求 rank_params["sign"] = generate_sign(rank_params, app_secret) rank_url = "https://gw.open.1688.com/openapi/param2/1/com.alibaba.product/product.topList.query" rank_response = requests.get(rank_url, params=rank_params) rank_data = rank_response.json() # 解析榜单数据 if "result" in rank_data and "products" in rank_data["result"]: products = rank_data["result"]["products"] for idx, product in enumerate(products, 1): print(f"排名{idx} | 商品ID:{product['offerId']} | 标题:{product['title']} | 价格:{product['price']} | 销量:{product['saleCount']}")

四、常见问题与避坑指南

  1. 权限不足(403 错误):未申请对应接口权限,需在开放平台重新提交权限申请。
  2. 签名失败:参数未按字母序排序、时间戳过期(需 13 位毫秒级)、app_secret错误,需严格遵循签名规则。
  3. 类目 ID 无效:传入的categoryId不存在或层级错误,需通过类目接口重新核对。
  4. 频率超限:单应用 QPS 超 10 或日调用超 5 万,需增加缓存或申请更高权限。
  5. 榜单无数据:类目下无对应类型榜单,或pageNo超出总页数,可更换rankType或调整页码。

五、进阶应用场景

  • 选品分析:结合热销榜 + 好价榜,筛选高性价比爆款,辅助供应链选品。
  • 竞品监控:定时拉取指定类目榜单,追踪竞品销量、价格、排名变化。
  • 市场趋势:对比日 / 周 / 月榜单,识别类目增长趋势,预判市场热点。
  • 跨境选品:调用VNHot/VNTrend榜单,适配东南亚市场需求。
http://www.jsqmd.com/news/329579/

相关文章:

  • 全自动双片钉箱机优选指南:2026年口碑厂商推荐,有名的全自动双片钉箱机推荐排行技术领航,品质之选
  • 交稿前一晚!千笔,遥遥领先的AI论文网站
  • 埃拉菲布拉诺Elafibranor适应症与用法治疗原发性胆汁性胆管炎的每日一次口服剂量
  • 电商品牌如何选服务商?2026年福州广告公司推荐与评价,直击流量成本与出海痛点
  • 2026年内蒙古广告公司推荐:技术全栈与效果保障维度评价,涵盖多行业场景与增长确定性痛点
  • 情感化报告设计:让量子测试结果更人性
  • 福州广告公司哪家效果更好?2026年基于实战案例的评价与推荐
  • 用AI写国际专利:开发者出海工具包
  • 【小程序毕设源码分享】基于SSM+小程序的民宿预定系统的设计与实现(程序+文档+代码讲解+一条龙定制)
  • [大模型实战 01] 本地大模型初体验:Ollama 部署与 Python 调用指南
  • 如何为实体企业选广告服务?2026年黑龙江广告公司全面推荐与评测,直击效果验证痛点
  • 来,今天咱们手把手盘一个COMSOL里特别带劲的介质球模型。这玩意儿在等离子体清洗、材料表面处理这些工业场景里挺常见,就拿氩气和氦气这两种常见工作气体说事儿
  • 2026年内蒙古广告公司推荐:基于多行业应用评测,解决本地化营销与成本控制痛点
  • 基于Java Web的网上购物系统(11860)
  • 【小程序毕设源码分享】基于SSM+小程序的健康管理系统的设计与实现(程序+文档+代码讲解+一条龙定制)
  • 黑龙江企业品牌升级找谁?2026年黑龙江广告公司推荐与排名,解决策略与执行脱节痛点
  • 【AI学习1】了解开源大模型 - 教程
  • 星巴克星礼卡回收技巧
  • 2026年黑龙江广告公司推荐:多场景实战评测,解决本地企业获客与转化核心痛点
  • 基于yolov5深度学习的棉花病虫害图像识别系统[python]-计算机毕业设计源码+LW文档
  • 1988-2025年上市公司数字、绿色转型协同度数据
  • 2000-2024年上市公司制度性交易成本+Stata代码
  • 基于yolov5深度学习的苹果叶片病虫害图像识别系统[python]-计算机毕业设计源码+LW文档
  • 基于yolov5深度学习的驾驶道路损坏识别系统[python]-计算机毕业设计源码+LW文档
  • 软考高项:第4章:信息系统管理(占分分析/考点/题)
  • 38.C++进阶:C++的类型转换|static_cast|reinterpret_cast|const_cast|dynamic_cast
  • 2026年黑龙江广告公司推荐:多行业场景实战评测,破解本地获客与成本控制痛点
  • 39.C++进阶:C++的IO流|标准IO流|文件IO流|stringstream
  • 谈谈 Golang 中的线程协程是如何管理栈内存的 - 实践
  • 题解:P9867 [POI 2021/2022 R2] kon