小红书
一条笔记先调 TikHub,正文、作者、点赞收藏和全部原图一次拿齐;只有真视频再调下载狗拿视频。
脚本
xiaohongshu.py就是下面这套:图文、轮播视频给原图,真视频另给封面和视频- 一条 0.01 美元,真视频另加 0.005 元
- TikHub 失败时退回下载狗,只剩标题和媒体,
warnings里会写 - 传作者主页就翻完他发的全部,见作者主页;底层是下面的主页翻页
- 文件夹格式、共用参数和续跑见解析分享链接
底层:TikHub 拿正文、作者、原图
照 TikHub 官方文档的路径调,只把 https://api.tikhub.io 换成 https://tikhub-proxy.liuhetian.work:
curl -sS -m 60 -G https://tikhub-proxy.liuhetian.work/api/v1/xiaohongshu/app_v2/get_image_note_detail \
-H "Authorization: Bearer $MY_API_KEY" --data-urlencode "note_id=<笔记 ID>"
- 笔记 ID:链接里
/item/或/explore/后面那串 24 位十六进制,只传它,不用 xsec_token。只有xhslink短链时,文档说可以改传share_text=<短链>,没实测 - 字段:笔记在
data.data[0].note_list[0]。title、desc是标题和正文;user.nickname是作者,user.red_id是小红书号;liked_count、collected_count、comments_count、shared_count是赞、藏、评、转;time是秒级时间戳;hash_tag[].name是全部话题(topics只有一个);ip_location是 IP 属地 - 原图:
images_list[].original,原尺寸 WebP,直接下,不用带 Referer。把链接里的format/webp换成format/jpg就直接拿到 JPEG,签名不管这一段 - 一次 0.01 美元
底层:作者主页翻页
curl -sS -m 60 -G https://tikhub-proxy.liuhetian.work/api/v1/xiaohongshu/app_v2/get_user_posted_notes \
-H "Authorization: Bearer $MY_API_KEY" --data-urlencode "user_id=<用户 ID>"
- 用户 ID:主页链接
/user/profile/后面那串 24 位十六进制;笔记数据的user.userid也是它。文档说也可以改传share_text=<主页分享链接>,没实测 - 传错了照样扣钱:ID 不存在时外层
code照样是 200,data里是小红书的「服务异常」 - 翻页:第一页不传
cursor,以后传上一页最后一条的cursor,也就是它的笔记 ID,直到has_more为假 - 笔记在
data.data.notes[]:id、title、type、likes、collected_count、comments_count、share_count、create_time,sticky为真的是置顶 - 列表不够用:
desc截到 100 字,images_list[].original是空的,只有 1440 宽的url_size_large。正文全文和原图还得每条调一次上面的get_image_note_detail - 每页 0.01 美元,20 条:2026-10-17 一个发了 33 条的作者,2 页翻完,和
get_user_info里note_num_stat.posted一致
底层:图文、轮播视频、真视频怎么分
type 是 normal 的是图文。type 是 video 的有两种,字段上分不出,要看 images_list:
| 情况 | images_list | 视频怎么拿 |
|---|---|---|
| 真视频 | 只有 1 张,地址在 spectrum/ 下,那张是封面 | 调下载狗,720p 左右 |
| 轮播视频:小红书拿一组图拼成的 | 多张,地址在 notes_pre_post/ 下,就是原图 | 不用拿,原图已经全在这里;下载狗只给 720×960 的拼接视频 |
这是 2026-10-17 拿 6 条笔记比出来的,不是文档写的。
底层:别用下载狗取这些
- 下载狗给小红书只回标题和媒体:正文、作者是空的,点赞收藏是 0
- 个别图文给的图片直链全是 404:图实际在
oss-sg/notes/下,下载狗拼成了sns-img-hw.xhscdn.com/notes/… - 传短链时封面是空的