当前位置: 首页 > news >正文

京东获取商品评论指南,实时关注用户反馈

一、接口定位与申请流程

1. 接口名称与文档

  • 实际接口名称jingdong.ware.comment.get(商品评价查询接口)
  • 官方文档:需登录京东开放平台查看,路径为文档中心 > 商品类目属性 > jingdong.ware.comment.get

2. 申请流程

(1) 注册与认证
  • 步骤1:注册京东开放平台账号,完成支付宝实名认证。
  • 步骤2:提交企业资质(营业执照、法人身份证)或个人身份信息。
(3) 创建应用与权限申请
  • 步骤3:在开发者中心创建应用,填写应用名称、描述、回调域名等信息。
  • 步骤4:在API市场中搜索“商品评论”相关接口(如jingdong.ware.comment.get),提交使用申请,说明使用场景(如数据分析、竞品调研)。
(4) 审核与授权
  • 步骤5:提交应用审核,通常1-3个工作日完成。
  • 步骤6:审核通过后,获取App KeyApp Secret,并签订合作协议。

二、接口参数与调用方法

1. 接口基本信息

  • 接口名称jingdong.ware.comment.get
  • 请求方式:HTTPS GET/POST
  • 返回格式:JSON
  • 基础URLhttps://api.jd.com/routerjson

2. 必填参数

参数名类型必填说明
methodString接口名称,固定为jingdong.ware.comment.get
app_keyString京东开放平台分配的App Key
timestampString当前时间,格式YYYY-MM-DD HH:mm:ss
formatString返回格式,固定为json
vStringAPI协议版本,固定为2.0
sign_methodString签名方法,固定为md5
skuIdString商品SKU ID(如100012345678
pageInteger页码,从1开始
pageSizeInteger每页评论数(最大50)
sortTypeInteger排序方式(1=按时间降序,2=按评分降序,默认1)

3. 签名生成方法

 

python

def generate_sign(params, app_secret):
sorted_params = sorted(params.items(), key=lambda x: x[0])
sign_str = app_secret
for k, v in sorted_params:
sign_str += f"{k}{v}"
sign_str += app_secret
return hashlib.md5(sign_str.encode('utf-8')).hexdigest().upper()

4. 示例代码(Python)

 

python

import requests
import hashlib
import time
class JDAPI:
def __init__(self, app_key, app_secret):
self.app_key = app_key
self.app_secret = app_secret
self.base_url = 'https://api.jd.com/routerjson'
def _generate_sign(self, params):
sorted_params = sorted(params.items(), key=lambda x: x[0])
sign_str = self.app_secret
for k, v in sorted_params:
sign_str += f"{k}{v}"
sign_str += self.app_secret
return hashlib.md5(sign_str.encode('utf-8')).hexdigest().upper()
def get_comments(self, sku_id, page=1, page_size=10):
params = {
'method': 'jingdong.ware.comment.get',
'app_key': self.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': 1 # 按时间降序
}
params['sign'] = self._generate_sign(params)
response = requests.post(self.base_url, data=params, headers={'Content-Type': 'application/x-www-form-urlencoded'})
return response.json()
# 使用示例
if __name__ == '__main__':
app_key = 'your_app_key'
app_secret = 'your_app_secret'
jd_api = JDAPI(app_key, app_secret)
result = jd_api.get_comments('100012345678', page=1, page_size=5)
print(result)

三、返回数据结构与解析

1. 成功响应示例

 

json

{
"code": 0,
"message": "success",
"data": {
"total": 12500,
"page": 1,
"pageSize": 10,
"comments": [
{
"userId": "user123456",
"userNick": "京东会员_abc123",
"rating": 5,
"content": "手机运行流畅,拍照效果超出预期",
"creationTime": "2025-06-28 14:30:22",
"pictures": [
"https://img10.360buyimg.com/n1/s450x450_jfs/t1/250000/30/12345/123456/66d12345Eabcd1234/1234567890abcdef.jpg"
],
"replies": [
{
"replyUserId": "jd_official",
"replyContent": "感谢您的认可,我们将持续优化服务",
"replyTime": "2025-06-29 10:15:30"
}
]
}
]
}
}

2. 关键字段说明

字段名类型说明
contentString评论内容
ratingInteger评分(1-5星)
creationTimeString评论时间
picturesList用户上传的图片链接列表
repliesList官方或用户的回复内容

四、实时关注用户反馈方案

1. 定时任务监控

  • 方案:使用cronAPScheduler库设置定时任务,每小时调用一次API获取最新评论。
  • 代码示例
     

    python

    from apscheduler.schedulers.blocking import BlockingScheduler
    def fetch_latest_comments():
    latest_page = get_total_pages(sku_id) # 获取总页数
    for page in range(1, latest_page + 1):
    comments = jd_api.get_comments(sku_id, page=page)
    save_to_db(comments)
    scheduler = BlockingScheduler()
    scheduler.add_job(fetch_latest_comments, 'interval', hours=1)
    scheduler.start()

2. 增量数据获取

  • 方法:记录上次获取的最大评论时间戳,仅获取该时间之后的新评论。
  • 实现逻辑
    1. 首次全量获取并记录最新评论时间。
    2. 后续调用时,通过creationTime参数筛选新增评论。

3. 数据可视化与报警

  • 工具:使用Matplotlib生成评论趋势图,或集成企业微信/钉钉机器人发送异常评论报警。
  • 示例代码
     

    python

    import matplotlib.pyplot as plt
    def plot_comment_trend(comments):
    times = [comment['creationTime'] for comment in comments]
    plt.plot(times, [comment['rating'] for comment in comments])
    plt.savefig('comment_trend.png')

五、注意事项与合规说明

  1. 频率限制
    • 普通开发者:每分钟不超过200次请求。
    • 企业开发者:可申请提升配额,需联系平台。
  2. 数据合规性
    • 遵守《京东开放平台开发者协议》,禁止将数据用于非法用途(如恶意营销、侵犯用户隐私)。
    • 评论内容可能包含HTML标签,需用正则表达式清洗:
       

      python

      import re
      clean_content = re.sub(r'<[^>]+>', '', comment['content'])
  3. 错误处理
    • 401错误:Token失效,需重新获取access_token
    • 400错误:参数错误,检查skuIdpage等字段。
  4. 替代方案
    • 若官方API无法满足需求(如需要历史全量数据),可通过京东数据智囊服务(需单独商务洽谈)获取。

通过以上步骤,您可高效接入京东商品评论API,实现评论数据的自动化获取与实时监控,助力业务决策与用户体验优化。

http://www.dtcms.com/a/359691.html

相关文章:

  • 【秋招笔试】2025.08.30科大讯飞秋招笔试题
  • PetaLinux的JTAG启动
  • Linux/UNIX系统编程手册笔记:用户和组、进程凭证、时间以及系统限制和选项
  • 创维LB2004_安装软件教程
  • vscode克隆远程代码步骤
  • MSVC---编译器工具链
  • 基于GA遗传优化的双向LSTM融合多头注意力(BiLSTM-MATT)时间序列预测算法matlab仿真
  • 【秋招笔试】2025.08.29阿里云秋招笔试题
  • 拉长视频时长的两种方法
  • 2023年IEEE IOTJ SCI1区TOP,动态环境下无人机目标覆盖任务路径规划,深度解析+性能实测
  • 腾讯浑元最新技术:具有表征对齐的多模态扩散,用于高保真拟音音频生成
  • 免税商品优选购物商城系统|java技术开发
  • 计算机网络总览
  • join怎么用
  • 性能测试工具-Slow Query Log
  • C/C++ 高阶数据结构 —— 二叉搜索树(二叉排序树)
  • 安装Android Studio
  • DVWA靶场通关笔记-SQL Injection (Impossible级别)
  • 【LeetCode - 每日1题】解数独
  • Tomcat 中部署 Web 应用
  • [灵动微电子 MM32BIN560CN MM32SPIN0280]读懂电机MCU 模拟输入运放放大
  • LangChain Prompt管理核心:PromptTemplate与ChatPromptTemplate全解析
  • 旦旦的农场打卡计划
  • 合约服务架构-OOP 方式
  • Linux系统比较两个​​已排序文件​​的实用工具之comm
  • R3:适用于 .NET 的新一代响应式扩展库,事件订阅流
  • HarmonyOS 应用开发:基于API 12及以上的新特性与实践
  • 视觉大模型与多模态理解
  • MySQL直接启动命令mysqld详解:从参数说明到故障排查
  • 容器seccomp配置文件在云服务器安全策略中的实施规范