news 2026/6/8 7:36:31

京东商品详情API入门:Python快速实现商品信息抓取

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
京东商品详情API入门:Python快速实现商品信息抓取

你想通过 Python 快速实现京东商品详情 API 的调用,完成商品信息抓取,我会基于京东开放平台的合规 API(或新手友好的第三方 API),提供「零基础可落地、代码极简、步骤清晰」的入门方案,涵盖从 API 准备到数据解析的全流程,避开京东 API 的核心入门坑点。

一、核心前提(入门必看)

  1. API 选择
    • 新手推荐:第三方开放平台 API(如聚合数据、易源数据),无需企业资质,免费试用,上手快;
    • 合规进阶:京东开放平台 API(需企业资质、申请应用、签约接口),适合生产环境;
  2. 核心流程API密钥申请 → 构造请求参数 → 发送HTTP请求 → 解析JSON响应 → 提取商品数据
  3. 必备库requests(发送 HTTP 请求)、json(解析 JSON 数据),均为 Python 内置 / 主流库,新手易掌握。

二、前置准备

1. 安装依赖库

仅需安装requests(Python3.6 + 自带,若缺失则执行以下命令):

bash

运行

pip install requests
2. 获取第三方京东商品详情 API 密钥

以「聚合数据」为例(新手首选,免费试用):

  1. 关注博主,搜索「京东商品详情」;
  2. 免费领取 API 接口,完成实名认证,获取AppKey(核心调用密钥);
  3. 查看接口文档,确认核心信息:
    • 请求地址:https://v.juhe.cn/jd/item/detail
    • 请求方式:GET;
    • 必填参数:key(AppKey)、sku_id(京东商品 ID,从商品 URL 提取,如https://item.jd.com/100060195820.html中的100060195820);
    • 响应格式:JSON,包含商品标题、价格、库存、销量等核心字段。

三、完整入门代码(可直接运行)

python

运行

import requests import json # ===================== 配置信息(替换为你的信息) ===================== APP_KEY = "你的聚合数据AppKey" # 替换为自己的AppKey SKU_ID = "100060195820" # 京东商品ID(可替换为任意商品ID) API_URL = "https://v.juhe.cn/jd/item/detail" # ==================================================================== def get_jd_item_detail(): """抓取京东商品详情核心信息""" # 1. 构造请求参数 params = { "key": APP_KEY, "sku_id": SKU_ID } # 2. 构造请求头(模拟浏览器,避免被拦截) headers = { "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36" } try: # 3. 发送GET请求(超时时间5秒,避免卡顿) response = requests.get(API_URL, params=params, headers=headers, timeout=5) # 4. 检查请求状态(200表示成功) if response.status_code == 200: # 5. 解析JSON响应 result = response.json() # 6. 判断API调用是否成功(聚合数据:error_code=0为成功) if result["error_code"] == 0: # 7. 提取核心商品信息(逐层解析JSON) item_data = result["result"] detail = { "商品ID": item_data["sku_id"], "商品标题": item_data["title"], "商品价格": f"{item_data['price']}元", "库存状态": item_data["stock_state"], "店铺名称": item_data["shop_name"], "商品主图": item_data["pic_url"], "销量": item_data.get("sales", "暂无数据") # 部分商品无销量,用get避免KeyError } # 8. 打印结果(格式化输出,更清晰) print("=== 京东商品详情 ===") for key, value in detail.items(): print(f"{key}:{value}") # 可选:将数据保存为JSON文件 with open("jd_item_detail.json", "w", encoding="utf-8") as f: json.dump(detail, f, ensure_ascii=False, indent=4) print("\n商品数据已保存到 jd_item_detail.json 文件") else: print(f"API调用失败:{result['reason']},错误码:{result['error_code']}") else: print(f"HTTP请求失败,状态码:{response.status_code}") except requests.exceptions.Timeout: print("请求超时:京东API响应过慢,请稍后重试") except requests.exceptions.ConnectionError: print("网络错误:请检查网络连接或API地址是否正确") except KeyError as e: print(f"数据解析失败:缺失字段 {e},可能是商品ID无效或API返回格式变更") except Exception as e: print(f"未知错误:{str(e)}") if __name__ == "__main__": get_jd_item_detail()

四、代码核心说明(新手友好)

1. 关键步骤拆解

表格

步骤代码核心作用
1params构造参数传入 AppKey 和商品 ID,是 API 调用的必备条件
2headers设置 User-Agent模拟浏览器请求,避免第三方 API 拦截(新手最易踩的坑)
3requests.get()发送请求超时时间设为 5 秒,避免程序无限等待
4response.status_code先判断 HTTP 请求是否成功,再解析数据
5response.json()将 JSON 字符串转为 Python 字典,方便提取数据
6result["error_code"]第三方 API 的通用成功标识,非 0 则直接提示失败原因
7提取核心字段仅保留新手最关心的标题、价格、库存等,避免复杂解析
8异常捕获覆盖超时、网络、字段缺失等常见异常,新手不会因小错误卡壳
2. 核心坑点规避
  • User-Agent 缺失:不设置请求头会被 API 拦截,返回「请求非法」,代码中已默认配置;
  • KeyError 异常:部分商品无销量字段,用item_data.get("sales", "暂无数据")替代直接取值;
  • 商品 ID 无效:若提示「商品不存在」,检查 SKU_ID 是否从商品 URL 正确提取(京东商品 ID 为纯数字);
  • AppKey 错误:提示「APPKEY 不存在」时,核对聚合数据的 AppKey 是否复制正确(注意前后无空格)。

五、运行结果示例

plaintext

=== 京东商品详情 === 商品ID:100060195820 商品标题:京东京造 轻量便携保温杯 350ml 白色 商品价格:99.9元 库存状态:有货 店铺名称:京东京造官方旗舰店 商品主图:https://img10.360buyimg.com/n1/jfs/t1/21628/19/26077/44379/649a7f30F8040d770/xxx.jpg 销量:10万+ 商品数据已保存到 jd_item_detail.json 文件

六、进阶扩展(新手可选)

1. 批量抓取多个商品

只需将 SKU_ID 改为列表,循环调用即可:

python

运行

# 批量商品ID sku_list = ["100060195820", "100080907904", "100095380451"] for sku in sku_list: print(f"\n===== 开始抓取商品 {sku} =====") SKU_ID = sku # 替换当前商品ID get_jd_item_detail()
2. 解析更多字段

若需要库存数量、发货地、商品规格等,可在detail字典中添加对应字段:

python

运行

detail = { # 原有字段... "库存数量": item_data["stock_num"], "发货地": item_data["delivery_place"], "商品规格": item_data["spec_info"] }

总结

  1. 核心逻辑:京东商品详情抓取的入门核心是「构造请求参数 → 发送请求 → 解析 JSON 核心字段」,代码仅 30 + 行即可完成;
  2. 关键配置:必须设置User-Agent、核对AppKeySKU_ID,这是新手最易出错的 3 个点;
  3. 异常处理:覆盖超时、网络、字段缺失等异常,保证程序稳定运行;
  4. 扩展方向:批量抓取、解析更多字段、保存到 Excel,均可基于入门代码快速扩展。

这套方案完全适配新手,无需复杂的 API 签名、加密等操作,复制代码替换配置即可运行,是快速掌握京东商品详情 API 的最佳入门方式。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/30 4:25:47

企业招聘提效:AI 简历筛选工具优化转化率的核心策略

在企业招聘工作中,简历筛选是衔接人才获取与后续录用的关键环节,筛选效率与精准度直接影响招聘转化率和最终引入的人才质量。传统人工筛选模式易受主观因素、时间成本限制,难以适配海量简历的处理需求。AI 简历筛选工具依托技术手段实现了简历…

作者头像 李华
网站建设 2026/6/7 13:13:16

计算机Java毕设实战-基于springboot的教师排课管理系统基于SpringBoot的学校排课管理系统设计与实现【完整源码+LW+部署说明+演示视频,全bao一条龙等】

博主介绍:✌️码农一枚 ,专注于大学生项目实战开发、讲解和毕业🚢文撰写修改等。全栈领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围:&am…

作者头像 李华
网站建设 2026/6/5 14:12:31

云存储集成:Python 驱动企微外部群多媒体资源的自动化分发

​​QiWe开放平台 个人名片 API驱动企微外部群自动化,让开发更高效 官方站点:https://www.qiweapi.com 对接通道:进入官方站点联系客服 团队定位:企微生态深度服务,专注 APIRPA 融合技术方案 发送外部群文件时&#x…

作者头像 李华
网站建设 2026/5/31 20:33:17

Java毕设项目推荐-基于springboot的农村康养院敬老院平台的设计与实现【附源码+文档,调试定制服务】

博主介绍:✌️码农一枚 ,专注于大学生项目实战开发、讲解和毕业🚢文撰写修改等。全栈领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围:&am…

作者头像 李华
网站建设 2026/5/28 15:43:09

一键部署科研环境:天翼云息壤科研助手解放科研生产力

对于众多高校、科研机构的研究人员和教师而言,搭建和维护一个稳定、高效的科研计算环境往往是一项耗时且专业的技术挑战。从繁琐的软件配置、依赖库安装,到复杂的算力资源调度与管理,这些“科研之外”的准备工作常常消耗了本应用于核心研究的…

作者头像 李华