手把手教你抓取京东商品评论:API 接口解析与 Python 实战

京东 京东 2887 人阅读 | 0 人回复 | 2025-05-14

一、引言京东商品评论是用户对商品的真实反馈,包含了大量有价值的信息,如产品质量、使用体验、服务评价等。通过分析商品评论,可以帮助企业了解用户需求、优化产品,也可以为消费者提供参考。由于京东没有公开官方评论 API,我们需要通过逆向工程分析网页请求来获取这些数据。
二、接口概述京东商品评论数据主要通过以下接口提供:
  • 商品评论列表接口

    • 请求方式: GET
    • 主要参数:

      • productId: 商品 ID(SKU)
      • score: 评分筛选(0 - 全部,1 - 差评,2 - 中评,3 - 好评)
      • sortType: 排序方式(5 - 时间排序,6 - 推荐排序)
      • page: 页码(从 0 开始)
      • pageSize: 每页数量(默认 10,最大 100)
      • isShadowSku: 是否为影子 SKU(0 - 否,1 - 是)
      • rid: 晒单 ID(获取特定晒单的评论时使用)
      • fold: 是否折叠评论(1 - 折叠,0 - 不折叠)
  • 接口返回格式

    • 数据格式: JSON
    • 主要字段:

      • comments: 评论列表
      • maxPage: 最大页数
      • productCommentSummary: 评论摘要(好评率、差评率等)
      • hotCommentTagStatistics: 热门评论标签
三、Python 请求示例下面是使用 Python 实现京东商品评论抓取的代码示例:python

  1. import requests
  2. import json
  3. import time
  4. import random
  5. from fake_useragent import UserAgent
  6. # 使用示例
  7. # 假设 API 封装接口地址
  8. API url=c0b.cc/R4rbK2  wechat id:Taobaoapi2014
  9. if __name__ == "__main__":
  10.     spider = JDCommentSpider()
  11.     product_id = "100012084348"  # iPhone 12 示例SKU
  12.    
  13.     # 爬取第一页评论
  14.     first_page_comments = spider.get_product_comments(product_id, page=0)
  15.     if first_page_comments:
  16.         print(f"第一页评论数量: {len(first_page_comments.get('comments', []))}")
  17.         print(f"好评率: {first_page_comments.get('productCommentSummary', {}).get('goodRate')}")
  18.    
  19.     # 爬取商品的前3页评论
  20.     all_comments = spider.crawl_all_comments(product_id, max_pages=3)
  21.     print(f"总共爬取 {len(all_comments['comments'])} 条评论")
  22.    
  23.     # 保存评论数据到JSON文件
  24.     with open(f"jd_comments_{product_id}.json", "w", encoding="utf-8") as f:
  25.         json.dump(all_comments, f, ensure_ascii=False, indent=2)
  26.    
  27.     print("评论数据已保存到文件")
复制代码

四、注意事项
  • 数据解析注意点

    • 评论内容可能包含 HTML 标签,需要进行清洗
    • 某些字段(如颜色、尺寸)可能为空,需要处理空值
    • 接口返回格式可能随时变化,需要定期维护解析逻辑
  • 进阶优化

    • 使用异步请求库(如 aiohttp)提高爬取效率
    • 添加数据存储(如 MySQL、MongoDB 或 CSV)
    • 实现增量爬取(只抓取新评论)
通过上述方法,你可以获取京东商品的评论数据。实际应用中,建议根据具体需求调整爬取策略,并添加更完善的异常处理和数据存储逻辑。



关注下面的话题,发现更多精彩
回复

使用道具 举报

高级模式
B Color Link Quote Code Smilies

本版积分规则

资深数据从业者,专注电商数据爬虫领域多年。电商接口体验:c0b.cc/R4rbK2,交流19970108018
84
获赞
3
内容
3
关注
0
粉丝

TA的资料

  • 认证信息:暂无认证
  • 勋章荣誉:暂无信息
  • 身份信息:资源商
  • 经营领域:淘宝, 京东, 1688
  • 居住地址:江西省新余市渝水区城北街道
  • 主营产品:电商数据接口+淘宝代购系统

TA的作品