XHS-Downloader 实战入门指南:3 分钟下载小红书无水印图文视频
【免费下载链接】XHS-Downloader小红书(XiaoHongShu、RedNote)链接提取/作品采集工具项目地址: https://gitcode.com/gh_mirrors/xh/XHS-Downloader
在小红书保存图文全是水印压缩图,想留视频素材只能录屏,卡顿模糊三件套一个不少。XHS-Downloader 是一个小红书(XiaoHongShu、RedNote)链接提取与作品采集工具:粘贴作品链接,直接拿到服务器端无水印原文件。
📥 快速上手:从 clone 到第一张无水印图
环境要求只有一个:Python 3.12 及以上。推荐用 uv 管理依赖,比 pip 省心:
git clone https://gitcode.com/gh_mirrors/xh/XHS-Downloader cd XHS-Downloader uv sync --no-dev uv run main.py如果习惯 pip,也可以用pip install -r requirements.txt装完依赖后执行python main.py启动。
如何验证第一次运行成功了?启动后会自动弹出图形界面,主界面就是一个输入框加几个按钮。随便复制一条小红书作品链接粘贴进去,点"下载作品文件",稍等片刻到Volume/Download目录里检查文件:图文的分辨率与网页原图一致、没有二次压缩噪点,视频是平台源文件且无水印,说明全流程跑通。
不想装环境也有办法:直接下载编译好的程序压缩包,解压后双击main运行即可,文件默认落在_internal\Volume\Download,配置在_internal\Volume\settings.json。macOS 用户注意,首次运行前先在终端执行xattr -cr 项目文件夹路径移除系统安全限制,否则会被拦截打不开。
选对入口:GUI、命令行、API、MCP 各适合谁
程序内置四种操作入口,按需求选:
- 图形界面(默认启动):适合大多数普通用户,粘贴链接、点按钮就完成下载
- 命令行模式:适合需要精确控制的用户,比如只下载某篇图文的第 3、5 张图
- API 模式:适合写脚本批量处理的人,提供
/docs交互式接口文档 - MCP 模式:适合把下载能力接进 AI 助手,用自然语言下任务
日常使用基本只需要图形界面,后面三个知道存在即可。
日常用法:单条内容高清下载
流程非常简单:复制作品链接 → 粘贴进输入框 → 点下载。多个链接用空格隔开一起粘贴也行,程序会自动提取有效链接,不用手动清理 URL 参数。支持explore、discovery/item、user/profile以及xhslink.com短链等格式。
有三个配置项值得动手调一下(都在设置里,或改Volume/settings.json):
image_format:图文输出格式,支持AUTO / PNG / WEBP / JPEG / HEIC。想控制体积选 WEBP,要后期修图选 PNG,默认是 JPEGvideo_preference:视频清晰度偏好,resolution(分辨率优先)、bitrate(码率优先)、size(体积优先),日常用分辨率优先即可name_format:文件命名规则,默认是"发布时间 作者昵称 作品标题",想按作者归档就打开author_archive
Cookie 配置方法:解锁高清视频的关键
实测发现:不配 Cookie 时视频作品只能下载到低分辨率版本,配上之后才能解锁高清原片,而且不需要登录账号。获取步骤大概半分钟:
- 浏览器(可开无痕模式)打开
https://www.xiaohongshu.com/explore - 按
F12打开开发者工具,切到"网络"选项卡 - 勾选"保留日志",在过滤框输入
cookie-name:web_session - 点击页面上任意作品,选一条请求,全选复制 Cookie 字段
- 粘贴进程序的 Cookie 设置项,保存
如果从浏览器取 Cookie 有困难,也可以在请求头设置里手动粘贴一份浏览器请求头(User-Agent 等字段),程序会用它模拟真实浏览器环境,降低被风控的概率。
批量用法:用户脚本收集链接 + 任务直推
单条链接手动复制够用,但"把某博主主页作品全存下来"这种需求,逐条复制链接就太笨了。做法是给浏览器装 Tampermonkey 扩展,再安装项目自带的用户脚本static/XHS-Downloader.js:
脚本能提取的范围很实用:推荐页作品、账号的发布/收藏/点赞/专辑作品、搜索结果里的作品和用户链接都能抓。提取时开启自动滚动功能,脚本会滚动加载完全部内容再提取(默认 50 次,可改),抓到后一键复制,粘贴回程序输入框就是批量下载。
如果觉得"复制-粘贴"这一步也多余,可以打开任务直推模式:把配置里的script_server设为true,保持程序后台运行让它当小服务器;之后在小红书网页端点用户脚本菜单里的"推送下载任务",链接就直接发给程序处理,全程不碰剪贴板。注意首次配置时要在脚本设置里填入鉴权令牌(python main.py token生成)。
给程序员:API 与 MCP 最小接入
两种服务模式各一条最小命令:
python main.py api # API 模式,访问 http://127.0.0.1:5556/docs python main.py mcp # MCP 模式,端点 http://127.0.0.1:5556/mcpAPI 模式启动后,在/docs页面右上角 Authorize 里填入鉴权令牌(python main.py token生成),然后 POST/xhs/detail,传url、download、index(指定下载哪些序号的图片)等参数即可。MCP 模式在支持 MCP 的客户端里配上地址和Authorization: Bearer <令牌>请求头,就能用自然语言让它获取作品数据或下载文件,接进日常 AI 助手体验相当顺滑。
完整的参数说明见 README.md 的服务器模式章节,命令行全部参数及注释在 source/CLI/main.py,二次开发示例参考 example.py。
避坑指南 ⚠️
- 下载失败或链接失效→ 作品链接携带日期信息,放久了会被风控 → 批量下载前用脚本重新提取最新链接
- 同一作品第二次下载被跳过→
download_record默认开启,程序会记录已下载的作品 ID → 想强制重下,删掉Volume/ExploreID.db里对应记录 - 脚本推送下载任务失败→ 全局代理工具会干扰脚本请求 → 先关掉代理再试
- Linux 上读取剪贴板不工作→ 系统没装
xclip或xsel→ 执行sudo apt-get install xclip装上即可 - 请求频繁后作品获取异常→ 程序内置
avg_delay请求延时机制是故意的 → 别手动调快,默认值最稳 - macOS 首次打不开程序→ 可执行文件未经代码签名被系统拦截 → 终端执行
xattr -cr 项目文件夹路径后重试
结尾
适合经常需要保存小红书图文、视频做学习笔记、剪辑素材或个人收藏的用户,从单条高清下载到批量归档这条链路都覆盖到了。最后提醒一句:下载的内容请仅用于个人学习与研究,尊重原创作者版权,不要商用或二次传播。
【免费下载链接】XHS-Downloader小红书(XiaoHongShu、RedNote)链接提取/作品采集工具项目地址: https://gitcode.com/gh_mirrors/xh/XHS-Downloader
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考