一、接口定义与核心参数
小红书笔记评论接口用于获取指定笔记下的用户评论数据,支持分页与身份认证。以下是接口的关键信息:
- 接口地址
- 官方假设地址:
https://api.xiaohongshu.com/v2/notes/{note_id}/comments
- 第三方工具地址(需验证):
https://api.xiaohongshu.com/comment/get
- 官方假设地址:
- 请求方式
- HTTP GET:适用于简单参数传递(如笔记ID、分页参数)。
- HTTP POST:适用于复杂参数或加密数据(如签名验证)。
- 必填参数
note_id
:笔记的唯一标识符(如649c46ab000000002702ad36
)。access_token
:访问令牌,需通过小红书开放平台认证获取。
- 可选参数
page
:分页页码(默认为1)。limit
/page_size
:每页返回的评论数量(默认为10)。timestamp
:请求时间戳(用于签名验证)。sign
:签名(通过app_id
、app_secret
及时间戳生成)。
二、调用流程与代码示例
1. 官方API调用流程
- 注册与认证
- 访问小红书开放平台,注册账号并创建应用。
- 提交企业资质或个人身份信息,通过审核后获取
app_id
、app_secret
及access_token
。
- 构建请求
- 示例代码(Python):
python
import requests
def get_comments(note_id, access_token, page=1, page_size=10):
url = f"https://api.xiaohongshu.com/v2/notes/{note_id}/comments"
params = {
"access_token": access_token,
"page": page,
"limit": page_size
}
response = requests.get(url, params=params)
if response.status_code == 200:
return response.json()
else:
print(f"请求失败,状态码:{response.status_code}")
return None
# 使用示例
note_id = "your_note_id"
access_token = "your_access_token"
comments_data = get_comments(note_id, access_token)
if comments_data:
for comment in comments_data["data"]["comments"]:
print(f"评论内容:{comment['content']}")
print(f"用户昵称:{comment['user_nickname']}")
print(f"点赞数:{comment['like_count']}")
- 示例代码(Python):
- 响应解析
- 成功响应示例:
json
{
"code": 200,
"message": "success",
"data": {
"comments": [
{
"comment_id": "123456",
"content": "评论内容",
"user_nickname": "用户昵称",
"create_time": "2025-07-16T12:00:00Z",
"like_count": 10
}
],
"pagination": {
"current_page": 1,
"total_pages": 3,
"per_page": 10,
"total_count": 25
}
}
}
- 成功响应示例:
2. 第三方工具调用(备选方案)
若官方API不可用,可通过第三方工具(如阿里云市场提供的接口)调用,但需注意合法性及稳定性:
- 接口地址:
https://api-xiaohongshu.com/comments
(示例,需验证)。 - 参数示例:
python
import requests
import hashlib
import time
app_id = "your_app_id"
app_secret = "your_app_secret"
note_id = "your_note_id"
page = 1
page_size = 20
timestamp = str(int(time.time()))
sign_str = app_id + note_id + str(page) + str(page_size) + timestamp + app_secret
sign = hashlib.md5(sign_str.encode('utf-8')).hexdigest()
headers = {"X-Appid": app_id, "Authorization": f"Bearer {access_token}"}
params = {
"note_id": note_id,
"page": page,
"page_size": page_size,
"timestamp": timestamp,
"sign": sign
}
response = requests.get("https://api-xiaohongshu.com/comments", headers=headers, params=params)
三、注意事项与常见问题
- 频率限制
- 小红书对API调用频率有限制(如每分钟100次),超限需申请提额。
- 数据合规
- 需遵守小红书开放平台协议,禁止滥用或泄露用户数据。
- 签名验证
- 部分接口需通过
app_id
、app_secret
及时间戳生成签名(如MD5加密),防止请求篡改。
- 部分接口需通过
- 网络抓包替代方案
- 若官方接口不可用,可通过Fiddler等工具抓取小红书APP或网页的请求,分析实际接口地址及参数。
- 步骤:
- 配置手机代理,抓取HTTPS请求。
- 过滤笔记评论相关接口(如
api.xiaohongshu.com/comment/list
)。 - 提取
note_id
、access_token
等参数,模拟请求。
四、总结
小红书笔记评论接口的调用需优先使用官方API,通过开放平台获取合法权限。若官方接口不可用,可尝试第三方工具或网络抓包,但需注意合规风险。核心步骤包括:注册认证、构建请求、处理响应及合规使用数据。