超清晰教程:Python 调用京东商品详情 API(完整可运行)

简介: 我给你一套最简单、最稳定、可直接复制运行的京东商品详情 API 调用代码,包含:签名生成 → 接口请求 → 数据解析 → 异常处理你只需要替换自己的 AppKey、AppSecret、AccessToken 就能用。

我给你一套最简单、最稳定、可直接复制运行的京东商品详情 API 调用代码,包含:

签名生成 → 接口请求 → 数据解析 → 异常处理你只需要替换自己的 AppKey、AppSecret、AccessToken 就能用。


一、你需要提前准备

  1. 京东开放平台创建应用
  2. 获取:
  • app_key
  • app_secret
  • access_token(店铺授权)
  1. 安装依赖

bash

运行

pip install requests

二、京东商品详情 API 核心接口

我们使用 官方最标准、数据最全 的两个接口:

  • 单品详情jingdong.item.read.get
  • 批量详情jingdong.item.list.get(一次最多 20 个)

三、完整 Python 代码(直接运行)

1. 京东 API 客户端(签名 + 请求自动处理)

python

运行

import requests
import hashlib
import time
class JDClient:
    def __init__(self, app_key, app_secret, access_token):
        self.app_key = app_key
        self.app_secret = app_secret
        self.access_token = access_token
        self.api_url = "https://api.jd.com/routerjson"
    # 京东官方签名算法(必须正确,否则调用失败)
    def sign(self, params):
        # 按 key 字典序排序
        sorted_items = sorted(params.items())
        # 拼接成字符串
        param_str = "".join(f"{k}{v}" for k, v in sorted_items)
        # 前后加 app_secret 再 MD5
        sign_src = self.app_secret + param_str + self.app_secret
        # 转大写
        return hashlib.md5(sign_src.encode()).hexdigest().upper()
    # 通用请求方法
    def request(self, method, params):
        public_params = {
            "method": method,
            "app_key": self.app_key,
            "timestamp": time.strftime("%Y-%m-%d %H:%M:%S"),
            "format": "json",
            "v": "2.0",
            "access_token": self.access_token
        }
        # 合并公共参数 + 业务参数
        all_params = {**public_params, **params}
        # 生成签名
        all_params["sign"] = self.sign(all_params)
        try:
            resp = requests.post(self.api_url, data=all_params, timeout=10)
            return resp.json()
        except Exception as e:
            return {"error": str(e)}

2. 获取【单个商品】详情(最常用)

python

运行

# ====================== 配置信息(换成你自己的) ======================
APP_KEY = "你的APP_KEY"
APP_SECRET = "你的APP_SECRET"
ACCESS_TOKEN = "你的ACCESS_TOKEN"
SKU_ID = "100012345678"  # 京东商品ID
# 初始化客户端
client = JDClient(APP_KEY, APP_SECRET, ACCESS_TOKEN)
# 获取商品详情
def get_jd_item_detail(sku_id):
    params = {
        "sku_id": sku_id,
        "fields": "sku_id,title,price,image_url,brand_info,sku_list,sku_property"
    }
    return client.request("jingdong.item.read.get", params)
# 调用
if __name__ == "__main__":
    result = get_jd_item_detail(SKU_ID)
    print("京东商品详情返回:")
    print(result)

3. 获取【批量商品】详情(一次 20 个)

python

运行

def get_jd_item_batch(sku_ids):
    params = {
        "sku_ids": ",".join(sku_ids),  # 逗号分隔,最多20个
        "fields": "sku_id,title,price,image_url"
    }
    return client.request("jingdong.item.list.get", params)
# 调用示例
# batch_result = get_jd_item_batch(["100012345678", "100087654321"])
# print(batch_result)

四、接口返回 JSON 示例(真实结构)

json

{
  "jingdong_item_read_get_response": {
    "result": {
      "code": 0,
      "msg": "success",
      "item": {
        "sku_id": "100012345678",
        "title": "小米14 12+256GB 黑色",
        "price": "3999.00",
        "image_url": "https://img14.360buyimg.com/xxx.jpg",
        "brand_info": { "brand_name": "小米" },
        "sku_list": [
          {"sku_id": "100012345678","price":"3999.00","properties":"颜色:黑色"},
          {"sku_id": "100012345679","price":"4299.00","properties":"颜色:白色"}
        ]
      }
    }
  }
}

五、最简单的数据解析代码

python

运行

def parse_item(result):
    try:
        item = result["jingdong_item_read_get_response"]["result"]["item"]
        return {
            "sku_id": item["sku_id"],
            "标题": item["title"],
            "价格": item["price"],
            "主图": item["image_url"],
            "品牌": item["brand_info"]["brand_name"]
        }
    except:
        return "解析失败"
# 使用
data = parse_item(result)
print("解析后数据:", data)

六、调用频率限制(必须遵守)

  • QPS:2 次 / 秒
  • 日调用:1000 次 / 天
  • 批量一次最多 20 个商品
  • 超限错误码:10003

七、我能帮你继续扩展

你需要我给你写:

  1. 自动翻页批量采集
  2. 保存到 Excel/MySQL
  3. 限流 + 重试防封
  4. SPU + 所有 SKU 完整采集
相关文章
|
3月前
|
XML JSON API
1688商品详情API接口使用指南
1688商品详情API(1688.item_get)是阿里1688开放平台核心接口,支持通过商品ID获取50+字段的全量信息,涵盖标题、价格、SKU、库存、图文、批发规则及商家资质等,适用于ERP同步、比价、跨境铺货等B2B场景。需实名认证并创建应用获取app_key与app_secret,接口仅返回JSON格式数据,是对接1688生态的关键技术通道。(239字)
|
7月前
|
JSON 监控 API
京东商品数据获取新姿势:商品列表API参数全解析
京东商品列表API是京东开放平台的核心接口,支持开发者高效获取商品名称、价格、销量等信息,适用于电商分析、价格监控等场景。提供关键词搜索、分类筛选、价格区间、排序及分页功能,支持HTTPS请求,数据实时更新,单次可查询最多200个SKU,助力电商应用开发。
|
4月前
|
JSON API 数据格式
如何在Python中提取JSON响应中的核心字段?
在 Python 中提取 JSON 响应的核心字段,核心逻辑是 “先将 JSON 响应转为 Python 字典 / 列表 → 按字段路径逐层提取 → 处理字段缺失 / 异常”,适配所有 API 的 JSON 响应(包括沃尔玛、京东等平台接口)。以下是简单易懂、通用可复用的方法,附完整代码示例
|
4月前
|
JSON 搜索推荐 API
淘宝商品评论 API 返回数据参考(附解析与实战示例)
淘宝商品评论 API(核心接口如 taobao.item.review.get)是获取商品用户评价数据的官方通道,返回数据以 JSON 格式为主,结构规范且字段丰富,涵盖评论基础信息、用户画像、内容详情、多媒体信息等维度。本文将拆解通用返回结构、核心字段含义、多场景示例及解析注意事项,为开发者提供完整的数据参考指南。
|
14天前
|
JSON 监控 小程序
淘宝商品详情 API(taobao.item.get)完整使用教程
从 0 到 1 手把手教你调用、解析、落地业务 适配场景:无货源代发、闲鱼铺货、ERP 同步、导购小程序、比价工具
|
5月前
|
XML JSON API
Rakuten 商品详情核心 API(Item Search API)参数体系解析与权限配置指南
Rakuten 商品搜索 API(如 IchibaItem/Search)的参数体系围绕商品检索需求设计,核心参数分为 必选参数、可选参数 和 控制参数 三类,具体如下
|
9月前
|
JSON API 开发者
京东商品 API 接口,开发者详解与使用指南
京东开放平台提供商品API,包括获取商品详情、搜索商品、查询分类等功能。开发者可通过API实现商品数据获取与分析,适用于电商选品、价格监控、比价应用等场景。本文详解API调用流程、签名生成方式及Python代码示例,助力高效接入京东商品数据。
|
2月前
|
数据采集 JSON 监控
淘宝商品详情 API 全解析 —— 从接口调用到 JSON 返回数据实战
在电商数据采集、竞品分析、价格监控、选品决策等场景中,淘宝商品详情 API是最核心、最常用的数据接口。它能稳定获取商品标题、价格、销量、库存、SKU 规格、店铺信息、发货地、好评率等全维度数据,相比直接爬虫,API 调用更合规、更稳定、效率更高。
|
2月前
|
数据采集 JSON 自然语言处理
Python爬取淘宝评论:从数据采集到情感分析的全流程指南
淘宝评论是用户对商品的真实反馈,包含产品优缺点、使用体验、满意度等关键信息。通过Python爬取并分析评论,可帮助商家优化产品、制定营销策略,或为消费者提供决策参考。本文将介绍如何用Python高效获取淘宝评论,并进行基础的情感分析。
|
3月前
|
存储 JSON API
乐天(Letian)商品详情API接口系列,json数据返回
日本乐天商品详情 API(IchibaItem/Item)返回的 JSON 数据结构,会随formatVersion参数不同而变化,推荐使用formatVersion=2(结构更清晰、字段更规范)。以下是完整的 JSON 数据结构解析、核心字段说明、示例数据及实用解析技巧,适配跨境选品、海外仓对接等业务场景。

热门文章

最新文章