一、接口概述
smallredbook.item_get_video_pro 是小红书开放平台提供的一款专业级笔记视频详情获取接口,是标准版 item_get_video 的增强版本。该接口专为电商场景、内容分析和数据挖掘等高频需求设计,能够获取包括无水印视频直链、完整互动数据、多级标签体系在内的深度信息。适用场景:竞品监控、内容营销优化、个性化推荐系统、用户行为分析等。
二、核心能力对比
| 功能维度 | item_get_video | item_get_video_pro |
|---|---|---|
| 视频直链 | ✅ 无水印 MP4 | ✅ 无水印 MP4 + 多清晰度 |
| 封面图 | ✅ 单张封面 | ✅ 多帧封面 + 动态封面 |
| 互动数据 | 基础点赞/评论/收藏 | 完整互动趋势 + 真实数值 |
| 标签体系 | 一级话题标签 | 多级分类 + 语义标签 |
| 作者信息 | 基础昵称/UID | 完整画像 + 历史数据 |
| 视频时长 | 秒级 | 毫秒级精度 |
| 数据时效性 | 实时 | 实时 + 历史快照 |
| 适用场景 | 一般性数据获取 | 企业级深度分析 |
三、接口规范
3.1 请求方式
plain
GET https://api-gw.onebound.cn/smallredbook/item_get_video_pro3.2 请求参数
| 参数名 | 类型 | 必填 | 说明 | 示例值 |
|---|---|---|---|---|
key | String | 是 | API 密钥 | your_api_key |
secret | String | 是 | API 密钥 Secret | your_api_secret |
num_iid | String | 是 | 笔记唯一 ID | 649c46ab000000002702ad36 |
xsec_token | String | 否 | 商品 token(部分笔记需要) | ABqixHfLobMJG4HpXyvXkCe... |
result_type | String | 否 | 返回格式:json/jsonu/xml | jsonu(中文友好) |
fields | String | 否 | 指定返回字段,减少数据量 | title,video,interact_info |
如何获取笔记 ID:在小红书 APP 中打开目标笔记 → 点击右上角"..."→ 复制链接 → URL 末尾的num_iid即为笔记 ID。
四、完整调用示例
4.1 Python 请求代码
Python
import requestsimport jsonimport timedef get_video_pro_detail(api_key, api_secret, num_iid, xsec_token=None):
"""
调用 item_get_video_pro 获取小红书笔记视频详情
"""
api_url = "https://api-gw.onebound.cn/smallredbook/item_get_video_pro"
params = {
"key": api_key,
"secret": api_secret,
"num_iid": num_iid,
"result_type": "jsonu", # 中文友好格式
"fields": "title,desc,video,cover,duration,tag_list,interact_info,user_info,time"
}
if xsec_token:
params["xsec_token"] = xsec_token
headers = {
"Accept-Encoding": "gzip",
"Connection": "close",
"User-Agent": "Mozilla/5.0 (compatible; DataBot/1.0)"
}
try:
# 添加随机延迟,模拟人工操作
time.sleep(0.5)
response = requests.get(api_url, params=params, headers=headers, timeout=30)
response.raise_for_status()
data = response.json()
if data.get("error_code") == "0000":
return data.get("item")
else:
print(f"API 错误: {data.get('reason')} (代码: {data.get('error_code')})")
return None
except requests.exceptions.RequestException as e:
print(f"请求异常: {e}")
return None# ===== 使用示例 =====if __name__ == "__main__":
API_KEY = "YOUR_API_KEY"
API_SECRET = "YOUR_API_SECRET"
NOTE_ID = "649c46ab000000002702ad36"
result = get_video_pro_detail(API_KEY, API_SECRET, NOTE_ID)
if result:
print("=" * 50)
print(f"📌 标题: {result.get('title')}")
print(f"📝 描述: {result.get('desc', '无描述')[:100]}...")
print(f"🎬 视频链接: {result.get('video')}")
print(f"🖼️ 封面图: {result.get('cover')}")
print(f"⏱️ 时长: {result.get('duration', '未知')} 秒")
print(f"👤 作者: {result.get('nick')}")
interact = result.get("interact_info", {})
print(f"❤️ 点赞: {interact.get('liked_count', 0)}")
print(f"💬 评论: {interact.get('comment_count', 0)}")
print(f"⭐ 收藏: {interact.get('collected_count', 0)}")
tags = result.get("tag_list", [])
print(f"🏷️ 标签: {', '.join([t.get('name') for t in tags[:5]])}")4.2 返回数据结构
JSON
{
"item": {
"title": "夏日清透底妆教程 | 油皮亲妈",
"desc": "今天分享一个适合油皮的清透底妆方法...",
"video": "http://sns-video-qc.xhscdn.com/stream/xxx/1080p.mp4",
"video_sd": "http://sns-video-qc.xhscdn.com/stream/xxx/480p.mp4",
"cover": "http://sns-img-qc.xhscdn.com/xxx.jpg",
"cover_frames": [
"http://sns-img-qc.xhscdn.com/frame1.jpg",
"http://sns-img-qc.xhscdn.com/frame2.jpg"
],
"duration": 186.5,
"width": 1080,
"height": 1920,
"tag_list": [
{"name": "美妆", "type": "category", "level": 1},
{"name": "底妆", "type": "category", "level": 2},
{"name": "油皮护肤", "type": "topic"},
{"name": "学生党", "type": "user_group"}
],
"interact_info": {
"liked_count": "12580",
"comment_count": "342",
"collected_count": "1890",
"share_count": "567"
},
"user_info": {
"nick": "美妆小达人",
"uid": "5f8a2b1c0000000001000000",
"city": "上海",
"follower_count": "128000"
},
"time": "2025-06-15 14:30:00",
"last_update": "2025-06-16 09:00:00"
}}五、电商实战应用场景
5.1 竞品视频内容监控
Python
def monitor_competitor_videos(brand_keywords, top_n=100):
"""
监控竞品高互动视频,分析标签组合规律
"""
# 某美妆品牌实战:抓取竞品 TOP100 视频
# 分析高互动内容标签组合,优化自家视频脚本
# 实测效果:完播率提升 38%,种草转化率提高 22% [^6^][^7^]
pass5.2 个性化推荐系统
基于用户画像(如"油皮护肤"+"学生党")定向推送高潜力视频(点赞 > 1000),提升内容分发效率。
5.3 内容质量评估
通过互动数据与视频时长的比值,建立内容质量评分模型:
plain
质量分 = (点赞数 × 1 + 收藏数 × 2 + 评论数 × 3) / 视频时长(秒)六、合规与限制
6.1 调用频率限制
| 用户类型 | 默认 QPS | 可申请上限 |
|---|---|---|
| 个人开发者 | 10 | 50 |
| 企业用户 | 50 | 100+ |
建议:添加 0.5-2 秒随机延迟,模拟人工操作,避免触发风控。
6.2 常见错误码
| 错误码 | 含义 | 解决方案 |
|---|---|---|
0000 | 成功 | - |
2000 | 笔记不存在(删除/下架) | 检查 URL 有效性 |
403 | API 权限不足 | 核对 key/secret 有效性 |
503 | 限流 | 增加代理 IP 或延迟 30 秒后重试 |
6.3 数据使用边界
- ❌ 禁止爬取用户隐私数据(如 IP、精确地理位置)
- ❌ 视频仅限内部分析,商用需获得作者授权
- ⚠️ 视频直链有效期通常为 7 天,需及时下载或缓存
七、替代方案对比
| 方案 | 优点 | 缺点 | 适用场景 |
|---|---|---|---|
| API 直连(推荐) | 合法、稳定、无水印 | 需申请资质,限制 QPS | 企业级长期监控 |
| 小程序解析 | 无需编程,即用即走 | 依赖第三方工具,易失效 | 临时下载少量视频 |
| 浏览器抓包 | 绕过 API 限制 | 需逆向 JS,反爬风险高 | 技术验证/学术研究 |
| 录屏法 | 无技术门槛 | 画质损失、含水印 | 个人非商用保存 |
八、总结
smallredbook.item_get_video_pro 是小红书生态中功能最完善的视频详情接口,相比标准版在数据深度和字段丰富度上有显著提升。对于需要深度内容分析、竞品监控和精准营销的企业级应用,该接口是首选方案。最佳实践建议:
- 优先使用官方 API,确保合规性与数据稳定性
- 合理控制调用频率,配置重试机制与代理 IP
- 建立数据缓存策略,避免重复请求
- 定期关注接口文档更新,适配新字段
如遇任何疑问或有进一步的需求,请随时与我私信或者评论联系。