3 步跑起 XHS-Downloader:批量下载无水印小红书作品教程
【免费下载链接】XHS-Downloader小红书(XiaoHongShu、RedNote)链接提取/作品采集工具项目地址: https://gitcode.com/gh_mirrors/xh/XHS-Downloader
XHS-Downloader 是一个开源的小红书(XiaoHongShu、RedNote)作品采集工具。你把作品链接贴进去,它就帮你解析出无水印的图片或视频原始文件,保存到本地。想收藏内容的普通用户、需要批量采集的运营人员、要做接口集成的开发者,都能用它。
为什么需要它
平时看到一组好看的图文,想存下来只能一张张截图,视频则带着水印和平台标识。想要"无水印原文件 + 批量处理 + 自动去重",手动操作几乎不可能。
XHS-Downloader 把这些事一次做完:粘贴链接、解析下载地址、下载文件、记录已下载的作品,全程自动化。
🚀 3 步跑起来
前提条件:电脑上装有不低于 3.12 的 Python 解释器,以及 uv 包管理器(没有的话先装 uv)。
第 1 步,拿到源码:
git clone https://gitcode.com/gh_mirrors/xh/XHS-Downloader cd XHS-Downloader第 2 步,同步依赖:运行uv sync --no-dev。
第 3 步,启动程序:运行uv run main.py。不带参数启动时,默认打开图形界面。
嫌源码麻烦?Windows 和 macOS 用户可以直接从项目 Release 页下载预编译压缩包,解压后双击main即可;服务器环境则用docker pull joeanamier/xhs-downloader拉取镜像运行。
从单条链接到批量采集
图形界面:粘贴链接就能下
打开界面后,把链接粘进输入框,点击下载按钮。程序支持 4 种链接格式:
xiaohongshu.com/explore/作品IDxiaohongshu.com/discovery/item/作品IDxiaohongshu.com/user/profile/作者ID/作品IDxhslink.com/分享码
多条链接之间用空格分隔即可一次提交。程序会自动识别有效链接,跳过已下载过的作品,下载记录保存在./Volume/ExploreID.db里。
命令行:批量下载配置
习惯终端的话,直接用参数控制行为。指定 4 种格式的图文作品:
python main.py --url "https://www.xiaohongshu.com/explore/xxxx" --image_format WEBP --folder_mode true常用参数:
--index "1 3 5":只下载第 1、3、5 张图--name_format:自定义文件名,默认是"发布时间 作者昵称 作品标题"--author_archive true:按作者分文件夹归档--video_preference:视频偏好,支持resolution、bitrate、size三档--proxy:请求走代理;bool 型参数可用true/false填写
API 与 MCP:接入你自己的系统
把 XHS-Downloader 变成一台"下载服务器",只需要再跑一条命令。API 模式运行python main.py api,服务监听 5556 端口,先在终端拿到鉴权令牌,再调用接口:
response = requests.post( "http://127.0.0.1:5556/xhs/detail", json={"url": "作品链接", "download": True}, headers={"Authorization": "Bearer 令牌"}, timeout=10, )访问http://127.0.0.1:5556/docs可以在线调试所有接口。MCP 模式则运行python main.py mcp(需先uv sync --no-dev --extra mcp安装 fastmcp),把http://127.0.0.1:5556/mcp填进 AI 助手的 MCP 配置,之后用自然语言就能指挥它下载作品。
⚠️ 常见报错与异常处理
现象:明明链接没过期,下载却失败或被风控。原因:小红书作品链接携带日期信息,几天前复制的旧链接很容易触发风控。 处理:回小红书重新打开作品页面,复制最新链接再提交;顺手在settings.json里配置有效的 Cookie,能明显改善成功率。
现象:视频下载下来很糊,只有低分辨率。原因:没有配置 Cookie 时,程序只能拿到低清视频流。 处理:浏览器登录小红书网页版,按下面示意在开发者工具里复制web_session、webId等值,写入settings.json的cookie字段。
现象:用--index批量传了多个链接,只有第一个被处理。原因:设置了--index时,程序只处理首个作品链接,这是命令行的既有规则。 处理:带序号需求就单条执行;纯批量下载则去掉--index,多个链接用空格分隔一次传入。
合规使用与延伸阅读
工具虽好,请守住边界:尊重创作者版权,仅用于个人收藏等合规用途,控制请求频率(程序内置约 6 秒的平均请求延时,建议保留),遵守小红书平台的服务条款。
想深入看参数细节,读 README.md 就够了;核心解析与下载逻辑集中在 source/application/ 目录;浏览器端联动可以试试仓库里的 static/XHS-Downloader.js 用户脚本,装好 Tampermonkey 后能直接在页面上提取链接、推送到本地程序。
【免费下载链接】XHS-Downloader小红书(XiaoHongShu、RedNote)链接提取/作品采集工具项目地址: https://gitcode.com/gh_mirrors/xh/XHS-Downloader
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考