一、核心前提说明
首先要明确:淘宝官方并未开放公开的评论查询 API,市面上能接入的大多是第三方服务商(如聚塔数据、数多多等)提供的 API,这类 API 通常需要:
注册服务商账号,获取API Key/Token
按服务商要求的请求格式(HTTP/HTTPS)调用
按调用次数 / 流量付费
以下示例基于第三方淘宝评论 API 的通用规范编写,你只需替换成自己的服务商参数即可。
二、完整的 API 调用与数据处理示例(Python)
1. 核心代码(可直接运行)
python
运行
import requests import json import time # -------------------------- 配置参数(替换成你的实际信息) -------------------------- API_URL = "https://第三方服务商域名/api/taobao/comment" # 服务商API地址 API_KEY = "your_api_key" # 你的API密钥 TAOBAO_ITEM_ID = "123456789" # 要查询的淘宝商品ID PAGE_NUM = 1 # 页码 PAGE_SIZE = 20 # 每页评论数 def get_taobao_comments(item_id, page_num=1, page_size=20): """ 调用淘宝评论API,获取商品评论数据 :param item_id: 淘宝商品ID :param page_num: 页码 :param page_size: 每页条数 :return: 解析后的评论列表(字典格式) """ # 1. 构造请求参数 params = { "key": API_KEY, "item_id": item_id, "page": page_num, "page_size": page_size, "format": "json" # 指定返回格式为JSON } try: # 2. 发送请求(添加超时和重试机制,避免网络问题) response = requests.get( API_URL, params=params, timeout=10, # 超时时间10秒 headers={"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) Chrome/120.0.0.0"} ) # 3. 校验请求是否成功 response.raise_for_status() # 非200状态码抛出异常 # 4. 解析返回数据 result = response.json() # 5. 校验API返回是否正常(不同服务商的字段可能不同) if result.get("code") != 0: raise Exception(f"API调用失败:{result.get('msg', '未知错误')}") # 6. 提取核心评论数据 comments = result.get("data", {}).get("comments", []) return comments except requests.exceptions.Timeout: print("错误:请求超时,请检查网络或稍后重试") return [] except requests.exceptions.ConnectionError: print("错误:连接失败,请检查API地址是否正确") return [] except Exception as e: print(f"错误:{str(e)}") return [] def process_comments(comments): """ 处理评论数据(提取关键信息,如用户昵称、评论内容、评分、时间等) :param comments: 原始评论列表 """ if not comments: print("暂无评论数据") return processed_data = [] for comment in comments: # 提取核心字段(字段名根据服务商返回的实际结构调整) item = { "user_nick": comment.get("user_nick", "匿名用户"), "content": comment.get("content", "").strip(), # 评论内容 "score": comment.get("score", 0), # 评分(1-5分) "create_time": comment.get("create_time", ""), # 评论时间 "reply": comment.get("reply", ""), # 商家回复 "pic_urls": comment.get("pic_urls", []) # 评论图片 } processed_data.append(item) # 示例:打印前5条评论 print("解析后的评论数据(前5条):") for i, data in enumerate(processed_data[:5]): print(f"n第{i+1}条:") print(f"用户:{data['user_nick']}") print(f"评分:{data['score']}分") print(f"评论:{data['content']}") print(f"时间:{data['create_time']}") if __name__ == "__main__": # 调用API获取评论 comments = get_taobao_comments(TAOBAO_ITEM_ID, PAGE_NUM, PAGE_SIZE) # 处理并展示评论数据 process_comments(comments)
2. 关键代码解释
请求参数构造:params字典包含 API 密钥、商品 ID、分页信息,是第三方 API 调用的核心,需严格匹配服务商要求;
异常处理:覆盖了超时、连接失败、API 返回错误等常见场景,避免程序直接崩溃;
数据解析:先校验 API 返回的状态码,再提取评论核心字段,保证数据有效性;
数据处理:process_comments函数过滤冗余信息,只保留业务所需的关键数据(如用户昵称、评论内容、评分)。
3. 使用前置条件
安装依赖:执行pip install requests安装请求库;
替换配置:将API_URL、API_KEY、TAOBAO_ITEM_ID替换为你的实际信息;
适配字段:根据第三方服务商返回的 JSON 结构,调整result.get("data", {}).get("comments", [])等字段路径。
三、常见扩展需求处理
1. 分页获取所有评论
如果需要获取商品的全部评论,可循环调用 API(注意服务商的频率限制):
python
运行
def get_all_comments(item_id, page_size=20):
all_comments = []
page_num = 1
while True:
comments = get_taobao_comments(item_id, page_num, page_size)
if not comments:
break
all_comments.extend(comments)
page_num += 1
time.sleep(1) # 暂停1秒,避免触发频率限制
return all_comments
# 调用示例
all_comments = get_all_comments(TAOBAO_ITEM_ID)
print(f"共获取到{len(all_comments)}条评论")
2. 数据持久化(保存到 CSV/Excel)
将解析后的评论保存到文件,方便后续分析:
python
运行
import csv
def save_comments_to_csv(comments, file_path="taobao_comments.csv"):
if not comments:
return
# 定义CSV表头
headers = ["user_nick", "content", "score", "create_time", "reply"]
with open(file_path, "w", encoding="utf-8-sig", newline="") as f:
writer = csv.DictWriter(f, fieldnames=headers)
writer.writeheader()
writer.writerows(comments)
print(f"评论数据已保存到:{file_path}")
# 调用示例
processed_comments = [
{
"user_nick": c.get("user_nick"),
"content": c.get("content"),
"score": c.get("score"),
"create_time": c.get("create_time"),
"reply": c.get("reply")
} for c in comments
]
save_comments_to_csv(processed_comments)
总结
核心步骤:接入第三方淘宝评论 API 后,需先构造符合服务商要求的请求参数,添加异常处理保证稳定性,再解析返回数据提取核心字段;
关键注意事项:替换专属的 API 密钥和地址,适配服务商的返回字段结构,调用时添加频率限制(如time.sleep)避免被封禁;
扩展方向:可通过分页循环获取全量评论,或将数据保存到文件 / 数据库,便于后续的评论分析、情感判断等场景。
在此祝大家马年大吉!!!!!!!!!!
审核编辑 黄宇
-
API
+关注
关注
2文章
2467浏览量
66997
发布评论请先 登录
淘宝API+API:图片搜索相似商品利器
如何通过淘宝API接口根据商品ID获取商品评论
淘宝关键字搜索API接入后
淘宝商品评论API接口(taobao.item_review)指南
淘宝评论API:差评预警系统,及时处理!
淘宝商品评论电商API接口:提升销量与用户评论的深入解析
技术探索 | 淘宝平台商品评论数据获取方法与接口浅析
技术解析:如何通过淘宝开放平台API获取商品券后价
淘宝获取商品详情券后价API接口
淘宝天猫商品评论数据爬取技术方案(附 python 代码)
揭秘淘宝详情 API 接口:解锁电商数据应用新玩法
电商 API 接口:多平台商品评论分析的利器
淘宝评论API接入后
评论