ITPub博客

首页 > 大数据 > 数据分析 > 京东如何获取店铺所有商品?item_search_shop接口实操指南

京东如何获取店铺所有商品?item_search_shop接口实操指南

原创 数据分析 作者:OneLafite 时间:2025-08-25 14:27:26 0 删除 编辑

一、核心接口与权限准备

  1. 核心API接口
    • 接口名称: jd.item.search.shop(京东店铺商品搜索接口)
    • 功能:通过店铺名称或ID获取店铺内所有商品信息,支持分页与排序。
  2. 权限申请流程
    • 步骤1:注册京东开放平台账号,完成企业实名认证。
    • 步骤2:创建应用,选择“商品API”权限包,提交审核(1-3个工作日)。
    • 步骤3:获取 AppKey和 AppSecret,用于后续签名与认证。

二、API调用实战步骤

1. 生成签名(关键安全步骤)
pythonimport hashlibdef generate_sign(params, app_secret):# 按参数名ASCII升序排序sorted_params = sorted(params.items())# 拼接key=value字符串param_str = ''.join([f"{k}{v}" for k, v in sorted_params])# 拼接AppSecret并MD5加密param_str += app_secretreturn hashlib.md5(param_str.encode()).hexdigest().upper()
2. 调用店铺商品接口示例
pythonimport requestsimport time# 配置参数APP_KEY = "your_app_key"APP_SECRET = "your_app_secret"# 构建请求参数params = {"method": "jd.item.search.shop","app_key": APP_KEY,"timestamp": time.strftime("%Y-%m-%d %H:%M:%S"),  # 严格格式"v": "2.0","seller_nick": "特步平途专卖店",  # 店铺名称"page": 1,  # 页码"pageSize": 20  # 每页数量}# 生成签名并添加到参数params["sign"] = generate_sign(params, APP_SECRET)# 发送请求response = requests.get("https://api.jd.com/routerjson",params=params)# 解析响应if response.status_code == 200:data = response.json()if data.get('code') == '0':for item in data['result']['items']:print(f"商品名称: {item['title']}, 价格: {item['price']}, 销量: {item['sales']}")else:print("Error Code:", data.get('code'), "Message:", data.get('msg'))else:print("HTTP Error:", response.status_code)
3. 高级参数示例(精准筛选)
pythonparams = {"method": "jd.item.search.shop","app_key": APP_KEY,"timestamp": time.strftime("%Y-%m-%d %H:%M:%S"),"v": "2.0","seller_nick": "皓顿HAUTTON京东自营旗舰店","page": 1,"pageSize": 50,"sortType": "price_asc",  # 按价格升序排序"priceMin": 200,  # 价格下限"priceMax": 500  # 价格上限}

三、响应数据解析

  • 典型响应结构:
json{"code": "0","msg": "success","result": {"items": [{"skuId": "100006965163","title": "皓顿休闲鞋男鞋头层牛皮时尚潮牌运动小白鞋百搭板鞋子男","price": 368,"promotion_price": 368,"pic_url": "//img13.360buyimg.com/n7/jfs/t1/153961/17/1801/305679/5f813073E03c570f7/8d5a59f610675771.jpg","sales": 1200,"seller": "皓顿HAUTTON京东自营旗舰店"}],"total": 120,"page": 1,"pageSize": 20}}
  • 关键字段说明:
    • skuId:商品唯一标识符
    • title:商品名称
    • price:商品价格
    • sales:商品销量
    • pic_url:商品图片URL

四、常见问题与解决方案

  1. 签名失败
    • 原因:参数排序错误、时间戳格式不正确。
    • 解决:检查参数是否按ASCII升序排列,时间戳格式为 YYYY-MM-DD HH:mm:ss。
  2. 权限不足
    • 原因:应用未申请商品API权限。
    • 解决:登录开放平台检查权限配置,提交权限升级申请。
  3. 数据为空
    • 原因:店铺名称错误或参数不合法。
    • 解决:确认店铺名称正确性,或尝试使用店铺ID( shopId参数)调用。
  4. 频率限制
    • 原因:触发京东API限流(QPS限制通常为50次/秒)。
    • 解决:使用队列(如Celery)管理请求,或申请提高QPS限额。

五、实战优化建议

  • 安全存储:将 AppSecret存入环境变量或加密数据库(如Vault)。
  • 异步处理:批量请求时采用分页机制,结合异步任务提高效率。
  • 日志监控:记录每次API调用的请求参数、响应状态码及耗时,便于排查问题。
  • 缓存策略:对不常变动的数据(如分类、品牌)实施本地缓存,减少API调用次数。

通过以上步骤,您可系统化实现京东店铺商品数据的获取与处理。如需进一步集成至ERP或数据分析系统,可结合数据库存储(如MySQL)与可视化工具(如Tableau)完成全链路管理。


来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/70046834/viewspace-3094162/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论
专业研发电商平台API开放接口,搭建独立站系统,反向海淘代购系统十年+,https://o0b.cn/lafite。

注册时间:2025-06-20

  • 博文量
    231
  • 访问量
    258441