小红书笔记接口调用全攻略
·
小红书笔记详情接口调用方法
获取接口权限:需注册小红书开放平台开发者账号,完成企业认证并申请相应API权限(如内容API权限组)。注意个人开发者权限受限,建议使用企业主体。
接口基础参数:
note_id:笔记唯一标识符(如通过搜索接口或用户主页接口获取)access_token:OAuth2.0鉴权令牌,需通过授权流程获取- 请求示例(Python):
import requests
url = "https://open.xiaohongshu.com/api/note/detail"
params = {
"note_id": "6421e6b3000000001f03d123",
"access_token": "your_access_token"
}
response = requests.get(url, params=params)
返回数据结构解析
核心字段:
title:笔记标题(可能为空,因小红书部分笔记无标题)desc:正文内容(含用户输入的文本、Emoji及换行符)images:图片列表,包含高清图URL(需注意防盗链处理)user:作者信息(用户ID、昵称、头像)interact_info:互动数据(点赞数、收藏数、评论数)
特殊字段:
tag_list:笔记关联标签(含系统识别标签和用户添加标签)location:地理坐标信息(需用户授权公开)time:发布时间戳(需转换为可读格式)
数据清洗与存储方案
文本清洗:
- 使用正则表达式过滤
desc中的HTML标签和特殊符号 - 提取
@用户和#话题#结构化数据(示例代码):
import re
usernames = re.findall(r'@([\w\u4e00-\u9fff]+)', desc)
topics = re.findall(r'#([^#]+)#', desc)
图片处理:
- 替换图片URL参数获取高清图(如将
/format/webp改为/format/png) - 使用CDN加速下载并存储至OSS(需处理反爬虫机制)
存储建议:
- MongoDB存储原始JSON数据(保持嵌套结构)
- MySQL关系表存储清洗后的结构化数据(如用户-笔记多对多关系)
常见问题与调优策略
反爬应对:
- 控制请求频率(建议≤5次/秒,使用
time.sleep随机延迟) - 轮换IP池(推荐Luminati等商业代理服务)
数据补全技巧:
- 通过评论接口
/api/note/comments补充UGC内容 - 结合用户主页接口
/api/user/notes获取作者历史笔记
性能优化:
- 异步请求(Python可用
aiohttp+asyncio) - 增量更新机制(依据
time字段仅抓取新数据)
合规与伦理注意事项
- 严格遵循小红书《开放平台开发者协议》,禁止缓存用户隐私数据
- 商用场景需额外申请内容合规审核接口
- 数据展示时需保留原文作者信息和跳转链接
更多推荐

所有评论(0)