item_get_pro-获得JD商品详情京东API接口

京东商品详情 Pro 接口(以下简称 “Pro 接口”)是京东开放平台 / 京东联盟提供的高级版商品数据接口,相比基础版接口,可返回更全维度的商品信息(如 SKU 级价格、精细化参数、多维度图片 / 视频、营销信息、库存详情等),适用于电商分析、竞品监控、供应链管理等场景。以下是完整的接入流程和规范:

一、接口概述

1. 核心优势

  • 字段更全:覆盖基础信息、价格(原价 / 券后价 / 拼购价)、SKU 规格、商品参数(基础 + 详情)、图片 / 视频、库存、营销活动、店铺信息等;
  • 精度更高:支持 SKU 维度的精准数据返回,而非仅商品维度;
  • 稳定性强:调用限额更高,响应速度更快,适合批量 / 高频采集场景。

2. 适用场景

竞品监控、电商比价系统、供应链数据分析、商品数字化建档、营销决策支撑等。

3. 官方接口标识

京东开放平台 / 京东联盟中,Pro 接口的核心标识为:

  • 接口名称:jd.union.open.goods.detail.pro.get(京东联盟主推)/ taobao.item.get.pro(京东开放平台对标版,需以平台实际展示为准);
  • 接口归属:京东联盟(主推商业化接入)/ 京东开放平台(企业自用型接入)。

二、前期准备

1. 账号注册与认证

Pro 接口仅对企业主体开放(个人开发者无权限),需完成以下步骤:

步骤 1:注册开发者账号
  • 访问京东开放平台或京东联盟,商业化场景优先);
  • 点击 “开发者注册”,填写企业信息(企业名称、统一社会信用代码、联系人信息等),完成账号注册。
步骤 2:企业资质认证
  • 登录后进入 “账号中心 - 资质认证”,提交以下材料:
    • 营业执照(加盖公章的扫描件);
    • 法人身份证正反面;
    • 企业银行账户信息(可选,用于结算);
    • 接口使用场景说明(如 “企业自用商品数据分析,无商业化分发”)。
  • 审核周期:1-3 个工作日,审核通过后获得企业开发者权限。

2. 创建应用

  • 登录开发者后台,进入 “应用管理 - 创建应用”;
  • 选择应用类型:
    • 自用型:仅企业自身使用,无需上架,权限审核更快;
    • 第三方应用:面向其他企业 / 用户提供服务,需额外审核;
  • 填写应用信息:应用名称、应用描述(需明确 Pro 接口使用场景)、回调地址(可选),提交后生成应用的App KeyApp Secret(核心密钥,需妥善保管)。

三、接口权限申请

1. 找到 Pro 接口

  • 方式 1(京东联盟):进入 “联盟 API - 接口中心 - 商品相关”,搜索 “商品详情 Pro”;
  • 方式 2(京东开放平台):进入 “API 市场 - 商品服务”,筛选 “高级版 / Pro 版” 商品详情接口。

2. 提交权限申请

  • 点击 “申请权限”,选择已创建的应用,填写:
    • 接口使用场景(需详细,如 “用于企业竞品商品价格 / 参数监控,日调用量≤1000 次”);
    • 预计调用频率(日 / 小时调用量);
    • 数据用途(禁止填写 “爬虫 / 非法分发” 等违规场景)。
  • 审核周期:2-5 个工作日,审核通过后,应用将获得该接口的调用权限。

四、核心接入配置

1. 基础信息

配置项说明
接口请求地址京东联盟:https://api.jd.com/routerjson(统一网关);开放平台:https://eco.jd.com/router/rest
请求方式GET/POST(推荐 POST,参数较多时避免 URL 长度限制)
数据格式请求 / 响应均为 JSON 格式
字符编码UTF-8
签名方式MD5(必填,验证请求合法性)

2. 签名规则(核心)

京东 Pro 接口要求所有请求必须携带签名(sign参数),生成规则如下:

步骤 1:整理请求参数
  • 排除sign参数本身,将所有请求参数(包括公共参数 + 接口业务参数)按参数名 ASCII 码升序排序;
  • 参数值需为原始值,不得转义(如空格保留,特殊字符无需 URLEncode)。
步骤 2:拼接签名字符串

plaintext

签名字符串 = App Secret + 排序后的参数键值对拼接(key1value1key2value2...) + App Secret

示例:参数app_key=123timestamp=2025-12-16 10:00:00skuId=100012345678,App Secret 为abc123,则拼接后:

plaintext

abc123app_key123skuId100012345678timestamp2025-12-16 10:00:00abc123
步骤 3:生成签名

将拼接后的字符串做 MD5 加密,转大写,即为sign参数值。

3. 公共参数(所有请求必传)

参数名类型必填说明
methodString接口名称,如jd.union.open.goods.detail.pro.get
app_keyString应用的 App Key(创建应用后获取)
timestampString请求时间,格式:YYYY-MM-DD HH:mm:ss(东八区时间)
formatString响应格式,固定为json
vString接口版本,固定为1.0(以官方最新版本为准)
sign_methodString签名方式,固定为md5
signString按签名规则生成的签名字符串
param_jsonString业务参数 JSON 字符串(如 SKU ID、字段筛选等)

4. 业务参数(param_json 内的内容)

参数名类型必填说明
skuIdString京东商品 SKU ID(商品详情页 URL 中item.jd.com/后的数字)
fieldsString需返回的字段列表(Pro 接口默认返回全字段,可指定筛选,如title,price,skus
extParamsString扩展参数(如是否返回视频、历史价格,以官方文档为准)

五、接口调用流程

步骤 1:构造请求参数

python

运行

# 示例:构造公共参数+业务参数
import json
from datetime import datetime

# 公共参数
public_params = {
    "method": "jd.union.open.goods.detail.pro.get",
    "app_key": "你的App Key",
    "timestamp": datetime.now().strftime("%Y-%m-%d %H:%M:%S"),
    "format": "json",
    "v": "1.0",
    "sign_method": "md5"
}

# 业务参数
business_params = {
    "skuId": "100012345678",  # 目标商品SKU ID
    "fields": "title,price,skus,params,images,stock,promotion"  # 需返回的字段
}

# 拼接param_json
public_params["param_json"] = json.dumps(business_params, ensure_ascii=False)

步骤 2:生成签名

python

运行

import hashlib

def generate_sign(params, app_secret):
    # 按ASCII升序排序参数
    sorted_params = sorted(params.items(), key=lambda x: x[0])
    # 拼接签名字符串
    sign_str = app_secret
    for key, value in sorted_params:
        sign_str += f"{key}{value}"
    sign_str += app_secret
    # MD5加密并转大写
    sign = hashlib.md5(sign_str.encode("utf-8")).hexdigest().upper()
    return sign

# 生成sign并添加到参数中
app_secret = "你的App Secret"
public_params["sign"] = generate_sign(public_params, app_secret)

步骤 3:发送请求

python

运行

import requests

# 接口网关地址
api_url = "https://api.jd.com/routerjson"

# 发送POST请求(推荐)
response = requests.post(
    api_url,
    data=public_params,
    timeout=15,
    headers={"Content-Type": "application/x-www-form-urlencoded; charset=utf-8"}
)

# 解析响应
result = response.json()
print(json.dumps(result, ensure_ascii=False, indent=2))

步骤 4:解析响应结果

Pro 接口成功响应示例(核心字段):

json

{
  "code": 200,
  "msg": "success",
  "data": {
    "skuId": "100012345678",
    "title": "京东自营 某商品名称",
    "price": {
      "currentPrice": "299.00",  // 当前售价
      "originalPrice": "399.00", // 原价
      "couponPrice": "279.00"    // 券后价
    },
    "skus": [  // SKU维度数据
      {
        "skuId": "100012345679",
        "spec": "颜色:黑色 | 容量:128G",
        "price": "299.00",
        "stock": "有货"
      }
    ],
    "params": {  // 商品参数
      "基础参数": [{"名称": "品牌", "值": "京东京造"}, {"名称": "尺寸", "值": "10cm"}],
      "详情参数": [{"名称": "材质", "值": "塑料"}]
    },
    "images": [  // 商品图片
      "https://img10.360buyimg.com/n1/jfs/t1/xxx.jpg",
      "https://img10.360buyimg.com/n1/jfs/t1/yyy.jpg"
    ],
    "promotion": {  // 营销活动
      "coupon": [{"面额": "20元", "使用条件": "满299可用"}],
      "activity": "双12满减活动"
    }
  }
}

六、常见错误码及解决方案

错误码说明解决方案
100签名错误检查签名规则(排序、拼接、MD5 加密),确认 App Secret 无误
2001权限不足确认已申请 Pro 接口权限,且审核通过;检查应用类型是否匹配(企业 / 第三方)
3001SKU ID 无效核对 SKU ID 是否正确,确认商品未下架
4001调用频率超限降低调用频率,或申请提高限额(企业可联系京东商务拓展)
500接口服务异常稍后重试,或联系京东开放平台技术支持

七、接入注意事项

1. 调用限制

  • 频率限制:Pro 接口默认日调用量≤10000 次(以审核时的限额为准),单 IP / 应用 QPS≤5;
  • 超限处理:超限后接口返回 4001 错误,且可能临时封禁权限,需按规则调用。

2. 数据合规

  • 禁止将接口返回的数据用于非法分发、爬虫商业化、恶意比价等违规场景;
  • 需遵守《京东开放平台开发者协议》《京东联盟推广协议》,不得泄露用户 / 平台敏感数据。

3. 密钥管理

  • App Key 和 App Secret 为核心密钥,禁止泄露给第三方;
  • 建议定期更换密钥(开发者后台可操作),避免密钥泄露导致的风险。

4. 版本兼容

  • 京东接口可能迭代更新,需关注开放平台公告,及时调整参数 / 签名规则;
  • 优先使用官方 SDK(Java/Python)接入,减少手动处理签名的错误。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值