×

Python采集淘宝/京东商品评论API接口系列指南(JSON数据返回)

知名用户18007905473 知名用户18007905473 发表于2025-10-17 16:27:21 浏览76 评论0

抢沙发发表评论


Python采集淘宝/京东商品评论API接口系列指南(JSON数据返回)

一、前期准备

  1. 平台账号注册

    • 淘宝:登录o0b.cn/anzexi,完成企业/个人实名认证,创建应用获取App KeyApp Secret

    • 京东:访问o0b.cn/anzexi,注册开发者账号,创建应用获取App KeyApp Secret

  2. 接口权限申请

    • 淘宝:在控制台申请taobao.item.reviews.get接口权限(个人每日500次,企业可申请提升至10000次)。

    • 京东:申请jingdong.ware.productcomment.get接口权限,需提交使用场景说明。

二、接口调用全流程(以Python为例)

1. 淘宝商品评论API调用示例

python
import requests
import hashlib
import time

def get_taobao_comments(app_key, app_secret, item_id, page=1, page_size=20):
url = "https://eco.taobao.com/router/rest"
params = {
"method": "taobao.item.reviews.get",
"app_key": app_key,
"timestamp": time.strftime("%Y-%m-%d %H:%M:%S"),
"format": "json",
"v": "2.0",
"sign_method": "md5",
"item_id": item_id,
"page_no": page,
"page_size": page_size,
"sort": "create_time:desc"
}
# 生成MD5签名
sorted_params = sorted(params.items())
sign_str = app_secret + "".join(f"{k}{v}" for k, v in sorted_params if v) + app_secret
params["sign"] = hashlib.md5(sign_str.encode()).hexdigest().upper()

response = requests.get(url, params=params)
response.raise_for_status()
data = response.json()
if "error_response" in data:
raise Exception(f"API错误: {data['error_response']['msg']}")
return data["item_reviews_get_response"]["reviews"]["review"]

2. 京东商品评论API调用示例

python
def get_jd_comments(app_key, app_secret, sku_id, page=1, page_size=10, sort_type=1):
url = "https://api.jd.com/routerjson"
params = {
"method": "jingdong.ware.productcomment.get",
"app_key": app_key,
"timestamp": time.strftime("%Y-%m-%d %H:%M:%S"),
"format": "json",
"v": "2.0",
"sign_method": "md5",
"skuId": sku_id,
"page": page,
"pageSize": page_size,
"sortType": sort_type
}
# 生成MD5签名
sorted_params = sorted(params.items())
sign_str = app_secret + "".join(f"{k}{v}" for k, v in sorted_params if v) + app_secret
params["sign"] = hashlib.md5(sign_str.encode()).hexdigest().upper()

response = requests.post(url, data=params, headers={"Content-Type": "application/x-www-form-urlencoded"})
response.raise_for_status()
data = response.json()
if data.get("code") != 0:
raise Exception(f"API错误: {data.get('message', '未知错误')}")
return data["data"]["comments"]

三、JSON数据结构解析

1. 淘宝评论响应示例

json{"item_reviews_get_response": {"reviews": {"review": [{"content": "商品质量很好,物流很快!","created": "2025-03-25 10:00:00","score": 5,"user_nick": "淘宝用户123"}]}}}

2. 京东评论响应示例

json{"code": 0,"message": "success","data": {"comments": [{"content": "京东物流速度一流","creationTime": "2025-03-26 11:00:00","rating": 5,"userNick": "京东会员789"}]}}

四、异常处理与注意事项

  1. 错误码处理

    • 淘宝:错误码15表示签名错误,需检查App Secret和参数排序。

    • 京东:错误码10001表示权限不足,需确认接口权限申请状态。

  2. 频率限制

    • 淘宝:个人开发者每日500次,企业开发者每日10000次。

    • 京东:免费版每分钟不超过200次,企业版可申请提升配额。

  3. 数据合规

    • 禁止存储用户敏感信息(如手机号、地址),需遵守《淘宝开放平台协议》和《京东开放平台数据使用规范》。

五、实战应用场景

  1. 情感分析:通过NLP技术分析评论关键词,定位产品优缺点。

  2. 竞品对比:对比自身与竞品的评论数据,获取市场竞争优势。

  3. 服务优化:统计含“物流慢”“包装破损”关键词的评论占比,针对性提升服务质量。

通过本指南,您可系统掌握淘宝/京东商品评论API的调用方法,实现JSON数据的采集与解析,适用于数据分析、情感分析、竞品调研等多种场景。


群贤毕至

访客