一、引言
在电商领域,商品详情信息是用户了解商品、做出购买决策的关键依据。对于开发者而言,获取京东商品详情数据有助于构建比价工具、商品推荐系统、电商数据分析平台等应用。京东开放平台提供了商品详情 API 接口,允许开发者通过授权调用,获取商品名称、价格、规格参数、用户评价等丰富信息。本文将详细介绍该接口的使用方法,并提供 Python 请求示例,帮助开发者快速上手。
二、接口概述
京东商品详情 API 是基于 RESTful 风格设计的接口,主要用于获取单个或多个京东商品的详细信息。接口提供标准化的请求与响应格式,支持开发者根据业务需求灵活调用。
- 接口基本信息
三、Python 请求示例
python
import hashlib
import json
import requests
import time
# 假设 API 封装接口地址
API url=c0b.cc/R4rbK2 wechat id:Taobaoapi2014
def get_goods_detail(self, sku_id):
"""获取商品详情"""
method = "ware.getWareInfo"
timestamp = time.strftime("%Y-%m-%d %H:%M:%S", time.localtime())
param_json = {
"skuIds": [sku_id],
"isGetCommentSummary": 1, # 是否获取评论摘要
"isCareCoupon": 1 # 是否关注优惠券信息
}
params = {
"app_key": self.app_key,
"format": "json",
"method": method,
"timestamp": timestamp,
"v": "2.0",
"360buy_param_json": json.dumps(param_json)
}
sign = self.generate_sign(params)
params["sign"] = sign
try:
response = requests.post(url, data=params)
result = response.json()
if result.get('error_response'):
error_info = result['error_response']
raise Exception(f"请求失败,错误码:{error_info['code']},错误信息:{error_info['msg']}")
return result['ware_getWareInfo_response']['wareInfo']
except requests.RequestException as e:
raise Exception(f"请求异常:{e}")
使用说明
- 参数配置:根据需求修改
param_json
中的参数,如添加多个商品 ID、调整是否获取评论等信息。 - 签名计算:
generate_sign
方法根据请求参数生成签名,确保请求的合法性与安全性。 - 错误处理:示例代码对请求失败的情况进行了捕获,开发者可根据错误码进一步排查问题。