小红书获取笔记详情API接口运用指南

1 阅读3分钟

一、核心流程与权限获取

  1. 注册与认证

    • 在小红书开放平台注册开发者账号,完成企业资质或个人身份认证(需上传营业执照/身份证扫描件)。
    • 登录后创建应用,填写应用名称、类型(如数据分析工具、内容管理平台),提交后等待1-3个工作日审核。
  2. 申请API权限

    • 审核通过后,在应用管理页面申请“笔记详情API”(如red.note.detail.getv1/notes/{note_id})。
    • 填写申请理由(如“用于内容分析工具开发”),提交后二次审核需1-5个工作日。
    • 审核通过后,获取App KeyApp Secretaccess_token(有效期通常2小时,需通过OAuth2.0刷新)。

二、接口调用参数与地址

  • 请求地址示例

    • https://api.xiaohongshu.com/note/detail?note_id={note_id}&access_token={access_token}
    • https://api.xiaohongshu.com/v1/notes/{note_id}(需替换{note_id}为实际笔记ID)。
  • 关键参数

    参数说明
    note_id笔记唯一ID(可从笔记URL或分享链接中提取)
    access_token通过认证获取的令牌(需通过OAuth2.0授权流程)
    app_key应用的唯一标识
    fields指定返回字段(如title,content,like_count),减少数据量
    timestamp当前时间戳(防重放攻击)
    sign签名(按小红书规则生成,验证请求合法性)

三、代码示例(Python)

python
import requests
import json

def get_note_detail(app_key, access_token, note_id):
    url = f"https://api.xiaohongshu.com/note/detail?note_id={note_id}&access_token={access_token}"
    headers = {"Accept-Encoding": "gzip", "Connection": "close"}
    response = requests.get(url, headers=headers)
    if response.status_code == 200:
        return response.json()
    else:
        print(f"请求失败, 状态码: {response.status_code}")
        return None

# 替换为实际值
app_key = "YOUR_APP_KEY"
access_token = "YOUR_ACCESS_TOKEN"  # 需通过授权流程获取
note_id = "123456789"  # 示例笔记ID
result = get_note_detail(app_key, access_token, note_id)
if result:
    print(json.dumps(result, indent=2, ensure_ascii=False))

四、返回数据解析

  • 成功响应示例(JSON)

    json
    {
      "note_id": "123456789",
      "title": "示例笔记标题",
      "content": "这里是笔记正文内容...",
      "tags": ["标签1", "标签2"],
      "like_count": 100,
      "comment_count": 20,
      "author": {
        "user_id": "987654321",
        "nickname": "作者昵称",
        "avatar_url": "https://example.com/avatar.jpg"
      },
      "media": [
        {"type": "image", "url": "https://example.com/image1.jpg"},
        {"type": "video", "url": "https://example.com/video1.mp4"}
      ]
    }
    

五、注意事项与限制

  1. 调用频率限制

    • 每分钟≤100次,超限触发429错误。建议采用缓存+重试机制(如首次重试延迟1秒,第二次2秒)。
  2. 数据合规性

    • 遵守《个人信息保护法》,禁止存储或传播用户隐私数据(如手机号、地址)。
    • 数据仅限申请时声明的用途(如内容分析),禁止商业营销滥用。
  3. 错误处理

    • 捕获网络异常(如requests.exceptions.RequestException)。
    • 检查响应状态码(如401未授权、404笔记不存在、429频率超限)。
  4. 权限管理

    • 定期检查access_token有效期,使用OAuth2.0刷新令牌避免过期。
    • 严格保密App KeyApp Secret,禁止泄露或硬编码在前端。

六、替代方案(无API权限时)

  • 官方数据合作:联系小红书商务团队申请定制化数据服务(需企业资质和预算)。
  • 合法采集:仅采集公开可访问的笔记链接、标题、点赞数等,遵守robots.txt和版权法。
  • 第三方工具:如新红数据、蝉妈妈,提供付费/免费额度获取笔记互动数据。

七、最佳实践

  • 使用缓存策略(如Redis)存储已获取数据,减少重复请求。
  • 实现指数退避重试(如首次重试延迟1秒,第二次2秒)。
  • 定期检查小红书开放平台政策更新,避免接口变更导致服务中断。

通过以上流程,可合法、高效地获取小红书笔记详情数据,支撑内容分析、用户行为研究等场景。如遇权限申请被拒,需检查申请信息完整性(如应用场景描述),补充材料后重新提交。