python采集小红书笔记详情API接口,json数据示例分享

以下是一个基于Python模拟请求小红书笔记详情接口的技术示例,包含关键字段解析和合规注意事项提醒。请严格遵守平台规则,仅限授权范围内的合法数据采集。

用户需要知道如何发送HTTP请求,处理可能的反爬机制,比如加密参数、Cookie验证、IP限制等。小红书的接口可能有动态参数,比如__signature,这需要分析JavaScript代码来生成。此外,请求头中的User-Agent、Referer等信息也需要正确设置,否则容易被识别为爬虫。

然后,JSON数据的结构。用户可能需要示例数据来理解返回的信息。通常,笔记详情会包含作者信息、内容、互动数据(点赞、评论、收藏)、标签、发布时间等。例如,用户ID、笔记标题、正文、图片链接、标签列表、点赞数等字段。

在代码示例中,可能需要使用requests库发送GET或POST请求,处理可能的加密参数。比如,有些参数可能需要通过JavaScript函数生成,这时候可能需要用execjs或者PyExecJS来执行JS代码。此外,还需要处理Cookie,可能需要用户自己提供有效的Cookie来验证身份,否则可能无法获取数据。

一、请求参数分析(示例)

复制代码
# coding:utf-8
"""
Compatible for python2.x and python3.x
requirement: pip install requests
"""
from __future__ import print_function
import requests
# 请求示例 url 默认请求参数已经做URL编码
url = "https://api-gw.onebound.cn/smallredbook/item_get_video/?key=<您自己的apiKey>&secret=<您自己的apiSecret>&num_iid=670202b0000000002a032d2d&xsec_token=ABqixHfLobMJG4HpXyvXkCe-LXxeIR1B2uvdFd8FuikaM="
headers = {
    "Accept-Encoding": "gzip",
    "Connection": "close"
}
if __name__ == "__main__":
    r = requests.get(url, headers=headers)
    json_obj = r.json()
    print(json_obj)

二、响应数据示例(脱敏后)

复制代码
{
	"item": {
		"num_iid": "649c46ab000000002702ad36",
		"detail_url": "https://www.xiaohongshu.com/explore/649c46ab000000002702ad36",
		"title": "变形金刚4",
		"type": "video",
		"video": "http://sns-video-qc.xhscdn.com/stream/110/258/01e49c46a63bcd390103770389027d1ad7_258.mp4?sign=180a24669a446bf75a3ec79f41926bcb&t=64a04c54",
		"pic_url": "https://sns-img-hw.xhscdn.com/0ccd59b9-71ad-d2c0-ec5a-afac90d21355?imageView2/2/h/1920/format/webp|imageMogr2/strip",
		"tag_list": [
			{
				"name": "变形金刚",
				"type": "topic",
				"id": "545c2716d6e4a924bf74ed49"
			}
		],
		"desc": "  这就是柱子哥的魅力",
		"city": "河北",
		"nick": "变形金刚电影剪辑",
		"uid": "64805fc1000000000f004891",
		"interact_info": {
			"liked_count": "41",
			"collected_count": "16",
			"comment_count": "0"
		},
		"time": "2023-06-28 22:41:47",
		"_ddf": "mt"
	},
	"error": "",
	"reason": "",
	"error_code": "0000",

三、字段解析

Version: Date:

名称 类型 必须 示例值 描述
item item[] 0 获取用户作品
num_iid String 0 649c46ab000000002702ad36 作品ID
detail_url String 0 https://www.xiaohongshu.com/explore/649c46ab000000002702ad36 作品链接
title String 0 变形金刚4 作品标题
type String 0 video 作品类型
video String 0 http://sns-video-qc.xhscdn.com/stream/110/258/01e49c46a63bcd390103770389027d1ad7_258.mp4?sign=180a24669a446bf75a3ec79f41926bcb\&t=64a04c54 视频地址
pic_url String 0 https://sns-img-hw.xhscdn.com/0ccd59b9-71ad-d2c0-ec5a-afac90d21355?imageView2/2/h/1920/format/webp|imageMogr2/strip 作品主图
tag_list String 0 [] 作品话题
相关推荐
Word码28 分钟前
[C++语法] 继承 (用法详解)
java·jvm·c++
TT哇33 分钟前
【实习 】银行经理端两个核心功能的开发与修复(银行经理绑定逻辑修复和线下领取扫码功能开发)
java·vue.js
逝水如流年轻往返染尘36 分钟前
Java中的数组
java
java1234_小锋1 小时前
Java高频面试题:BIO、NIO、AIO有什么区别?
java·面试·nio
用户8307196840821 小时前
Java IO三大模型(BIO/NIO/AIO)超详细总结
java
松涛和鸣1 小时前
72、IMX6ULL驱动实战:设备树(DTS/DTB)+ GPIO子系统+Platform总线
linux·服务器·arm开发·数据库·单片机
sheji34161 小时前
【开题答辩全过程】以 基于SSM的花店销售管理系统为例,包含答辩的问题和答案
java
Mr_sun.1 小时前
Day09——入退管理-入住-2
android·java·开发语言
likangbinlxa1 小时前
【Oracle11g SQL详解】UPDATE 和 DELETE 操作的正确使用
数据库·sql
MAGICIAN...2 小时前
【java-软件设计原则】
java·开发语言