ITPub博客

首页 > 大数据 > 数据分析 > 京东店铺所有商品API接口指南讲解

京东店铺所有商品API接口指南讲解

原创 数据分析 作者:OneLafite 时间:2025-12-10 14:01:03 0 删除 编辑

一、接入准备

  1. 注册与认证
    • 登录京东开放平台,完成企业/个人账号注册及实名认证(企业需上传营业执照,个人需身份证+人脸识别)。
    • 创建应用:进入“控制台-应用管理”,填写应用名称、类型(如电商工具/数据分析)及描述,审核通过后获取 AppKey(应用标识)和 AppSecret(加密密钥)。
  2. 权限申请
    • 在“API权限管理”中申请商品相关接口权限,如:
      • 商品详情: jd.item.get(通过SKU ID获取商品信息)
      • 店铺商品列表: jd.union.open.shop.goods.get(分页获取店铺内所有商品)
      • 商品搜索: jd.item.search(关键词/分类搜索)
      • 评价数据: jd.union.open.comment.query(需额外申请)
    • 部分接口需京东审核(1-3个工作日),审核通过后生效。

二、接口调用核心流程

  1. 构造请求参数
    • 必填公共参数: app_key(应用标识)、 method(接口名称)、 timestamp(时间戳,与服务器时间差≤5分钟)、 v(接口版本,如2.0)、 sign(签名)。
    • 业务参数示例:
      • 商品详情: sku_id(商品SKU ID)、 fields(返回字段,如 title,price,stock)
      • 店铺商品列表: seller_nick(店铺名称)、 page(页码)、 pageSize(每页数量)
  2. 生成签名(关键安全步骤)
    • 算法:采用 HMAC-SHA256或 MD5,步骤如下:
      1. 参数按ASCII码排序后拼接成字符串(排除 sign参数)。
      2. 首尾添加 AppSecret,形成待加密字符串。
      3. 使用 hashlib库进行加密(Python示例):
        pythonimport hmacimport hashlibimport urllib.parsedef generate_sign(params, app_secret):    sorted_params = sorted([(k, v) for k, v in params.items() if k != "sign"])    sign_str = "&".join(f"{k}={urllib.parse.quote_plus(str(v))}" for k, v in sorted_params)    signature = hmac.new(        app_secret.encode("utf-8"),        sign_str.encode("utf-8"),        hashlib.sha256    ).hexdigest().upper()    return signature
  3. 发送请求与处理响应
    • 请求方式:支持 POST/ GET,推荐 POST保障安全。
    • 示例代码(获取店铺商品列表):
      pythonimport requestsimport osapp_key = os.getenv("JD_APP_KEY")app_secret = os.getenv("JD_APP_SECRET")access_token = os.getenv("JD_ACCESS_TOKEN")  # 通过OAuth2.0获取params = {    "app_key": app_key,    "method": "jd.union.open.shop.goods.get",    "seller_nick": "特步平途专卖店",    "page": 1,    "pageSize": 20,    "timestamp": "2025-12-10 12:00:00",    "v": "2.0"}params["sign"] = generate_sign(params, app_secret)response = requests.post("https://api.jd.com/routerjson", data=params)if response.status_code == 200:    data = response.json()    if data.get("code") == "0":        for item in data["result"]["goods_list"]:            print(f"商品ID: {item['sku_id']}, 名称: {item['title']}, 价格: {item['price']}")

三、关键接口说明

接口名称 功能描述 请求参数示例
jd.item.get 获取单商品详情 sku_id=123456,  fields=title,price
jd.union.open.shop.goods.get 获取店铺所有商品(分页) seller_nick=店铺名称,  page=1,  pageSize=50
jd.item.search 商品关键词搜索 keyword=手机,  sortType=1(价格升序)

四、注意事项

  • 频率限制:单接口每分钟≤5次,超频将返回错误码 1002,需设置重试机制(如指数退避)。
  • 数据时效性:商品信息实时更新,建议缓存或定时同步。
  • 安全规范: AppSecret需存储在服务器端,禁止硬编码; AccessToken有效期30天,需定期刷新。
  • 错误处理:常见错误码如 1001(签名错误)、 1004(AppKey无效),需结合日志排查。

五、应用场景

  • 商品监控:实时抓取价格、库存,构建竞品分析系统。
  • 订单的管理:结合订单API实现自动下单与物流跟踪。
  • 营销活动:获取促销信息,嵌入自有平台提升用户转化。

通过以上步骤,可合规调用京东API获取店铺商品数据,支撑电商运营、数据分析等场景需求。建议定期关注京东开放平台文档更新,确保代码兼容性。


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

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

注册时间:2025-06-20

  • 博文量
    231
  • 访问量
    258374