三亩地 三亩地SAN MU DI · CODE DIARY
ARTICLE DETAIL

日记详情

真实记录编程学习的某一天,欢迎挑你感兴趣的翻一翻。

XHS-Downloader:小红书内容采集的3种高效方法与完整配置指南

XHS-Downloader:小红书内容采集的3种高效方法与完整配置指南

XHS-Downloader:小红书内容采集的3种高效方法与完整配置指南

【免费下载链接】XHS-Downloader小红书(XiaoHongShu、RedNote)链接提取/作品采集工具:提取账号发布、收藏、点赞、专辑作品链接;提取搜索结果作品、用户链接;采集小红书作品信息;提取小红书作品下载地址;下载小红书作品文件项目地址: https://gitcode.com/gh_mirrors/xh/XHS-Downloader

作为小红书内容创作者、数据分析师或普通用户,你是否经常遇到这些问题:看到喜欢的笔记无法批量保存,需要手动逐一下载;想要备份自己的作品却找不到高效工具;或者需要收集特定主题的内容进行市场分析?XHS-Downloader 正是为解决这些痛点而生的开源工具,它提供了图形界面、命令行和浏览器脚本三种使用方式,让小红书内容采集变得简单高效。

快速开始:三步部署XHS-Downloader

无论你是技术新手还是经验丰富的开发者,XHS-Downloader 都能在几分钟内完成部署。以下是三种主流安装方式的对比:

部署方式适合人群复杂度功能完整性推荐场景
图形界面运行普通用户、内容创作者⭐☆☆☆☆完整功能个人使用、快速下载
源码运行开发者、技术爱好者⭐⭐⭐☆☆完整功能+二次开发自定义功能、集成开发
Docker运行运维人员、服务器部署⭐⭐☆☆☆完整功能(部分限制)服务器环境、持续运行

图形界面运行(推荐新手)

对于大多数用户,这是最简单快捷的方式:

  1. 下载程序包:从项目仓库下载最新版本的可执行文件包
  2. 解压运行:解压后直接双击运行main可执行文件
  3. 开始使用:打开程序界面,粘贴小红书链接即可下载

XHS-Downloader图形界面提供了直观的操作体验,包含链接输入、一键下载、剪贴板监听等核心功能

源码运行(适合开发者)

如果你需要定制化功能或进行二次开发:

# 克隆项目 git clone https://gitcode.com/gh_mirrors/xh/XHS-Downloader # 进入项目目录 cd XHS-Downloader # 使用uv安装依赖(推荐) uv sync --no-dev # 启动程序 uv run main.py

Docker运行(适合服务器环境)

对于需要在服务器环境持续运行的用户:

# 拉取镜像 docker pull joeanamier/xhs-downloader # 运行容器(TUI模式) docker run -p 5556:5556 -v xhs_downloader_volume:/app/Volume -it joeanamier/xhs-downloader

核心功能详解:从基础到高级

基础功能:一键下载小红书作品

XHS-Downloader 的核心功能是提取和下载小红书作品。支持以下链接格式:

  • https://www.xiaohongshu.com/explore/作品ID?xsec_token=XXX
  • https://www.xiaohongshu.com/discovery/item/作品ID?xsec_token=XXX
  • https://www.xiaohongshu.com/user/profile/作者ID/作品ID?xsec_token=XXX
  • https://xhslink.com/分享码

智能特性

  • 支持单次输入多个作品链接,链接之间使用空格分隔
  • 自动提取有效链接,无需额外处理
  • 自动跳过已下载的作品文件,避免重复下载
  • 支持图文作品、视频作品、LivePhoto文件下载

图形界面操作详解

图形界面提供了最直观的操作方式,适合大多数用户:

  1. 链接输入:在输入框中粘贴小红书作品链接,支持批量处理
  2. 一键下载:点击"下载作品文件"按钮开始下载
  3. 剪贴板监听:开启后自动监测剪贴板中的链接
  4. 程序设置:自定义下载路径、文件格式等参数

快捷键操作

  • Q:退出程序
  • U:检查更新
  • S:程序设置
  • R:下载记录
  • M:开启监听
  • A:关于项目

命令行模式:精准控制的高级用法

对于需要批量处理或自动化操作的用户,命令行模式提供了更精细的控制:

# 基本下载命令 python main.py --url "小红书链接" # 指定下载部分图片 python main.py --url "链接" --index "1 3 5" # 设置自定义保存路径 python main.py --url "链接" --work_path "./我的收藏" --author_archive true # 配置高清视频下载 python main.py --url "链接" --cookie "你的Cookie值"

命令行模式提供了完整的参数控制,支持自定义下载路径、文件命名格式、代理设置等高级功能

核心参数说明

  • --url:小红书作品链接(必需参数)
  • --index:指定下载图片序号(仅对图文作品有效)
  • --work_path:文件保存根路径
  • --author_archive:按作者分类保存
  • --name_format:自定义文件名格式
  • --cookie:小红书网页版Cookie(获取高清视频必需)

高级配置与优化技巧

Cookie配置:解锁高清视频下载

虽然不配置Cookie也能使用基本功能,但配置后可以获得高清视频下载权限和更稳定的体验。Cookie获取步骤:

  1. 打开小红书网页版并登录账号
  2. 按F12打开开发者工具
  3. 切换到"网络"标签
  4. 勾选"保留日志"
  5. 刷新页面或点击任意作品
  6. 找到包含web_session的Cookie字段并复制

通过开发者工具获取Cookie,这是获取高清视频下载权限的关键步骤

配置文件详解

XHS-Downloader的配置文件位于./Volume/settings.json,支持丰富的自定义选项:

{ "work_path": "./Volume", "folder_name": "Download", "name_format": "发布时间 作者昵称 作品标题", "cookie": "", "image_format": "JPEG", "folder_mode": false, "download_record": true, "author_archive": false, "write_mtime": false, "script_server": false }

关键配置项说明

  • image_format:图片下载格式(AUTO、PNG、WEBP、JPEG、HEIC)
  • folder_mode:是否为每个作品创建独立文件夹
  • author_archive:是否按作者分类保存
  • download_record:是否记录已下载作品ID(避免重复下载)
  • script_server:是否开启用户脚本服务器

性能优化建议

  1. 网络优化

    • 设置合适的timeoutmax_retry参数
    • 根据网络状况调整chunk大小
    • 配置代理服务器提升稳定性
  2. 存储优化

    • 启用download_record避免重复下载
    • 设置author_archive按作者分类管理
    • 使用folder_mode保持文件组织清晰
  3. 格式选择

    • 图文作品支持多种格式:PNG、WEBP、JPEG、HEIC
    • 视频作品支持分辨率、码率、文件大小优先级选择

浏览器脚本集成:无缝网页操作体验

结合Tampermonkey浏览器扩展,XHS-Downloader可以在浏览小红书网页时直接使用:

安装Tampermonkey扩展后,通过脚本链接安装XHS-Downloader用户脚本

脚本功能亮点

  1. 一键提取链接

    • 提取当前账号发布的作品链接
    • 提取账号收藏的作品链接
    • 提取账号点赞的作品链接
    • 提取账号专辑作品链接
  2. 批量处理能力

    • 自动滚动页面加载更多内容
    • 支持批量提取搜索结果作品链接
    • 支持批量提取搜索结果用户链接
  3. 与主程序联动

    • 一键推送下载任务到主程序
    • 实时同步配置设置
    • 支持文件打包下载

浏览器脚本在小红书网页上添加功能菜单,实现"所见即所得"的数据采集

脚本安装步骤

  1. 安装Tampermonkey浏览器扩展
  2. 打开脚本管理页面
  3. 从URL安装:https://raw.githubusercontent.com/JoeanAmier/XHS-Downloader/refs/heads/master/static/XHS-Downloader.js
  4. 启用脚本即可在小红书网页上使用

服务器模式:API与MCP集成

API模式:开发者友好接口

XHS-Downloader提供了完整的REST API,方便开发者集成到自己的应用中:

# 启动API服务器 python main.py api # 访问API文档 # http://127.0.0.1:5556/docs # http://127.0.0.1:5556/redoc

API核心端点

  • POST /xhs/detail:获取作品详细信息或下载作品文件
  • 支持JSON格式请求参数
  • 提供完整的Swagger/Redoc文档

API调用示例

import requests server = "http://127.0.0.1:5556/xhs/detail" data = { "url": "小红书作品链接", "download": True, "index": [1, 3, 5], "proxy": "http://127.0.0.1:10808" } response = requests.post(server, json=data, timeout=10) print(response.json())

MCP模式:AI助手集成

对于使用AI助手的用户,MCP模式提供了无缝集成体验:

# 启动MCP服务器 python main.py mcp # MCP配置地址 # http://127.0.0.1:5556/mcp/

在MCP工具中配置XHS-Downloader服务,实现AI助手直接调用下载功能

MCP功能特点

  • 支持流式HTTP传输
  • 与AI助手深度集成
  • 支持自然语言指令调用
  • 实时状态反馈

二次开发指南

代码集成示例

XHS-Downloader提供了完整的Python API,方便开发者集成到自己的项目中:

from asyncio import run from source import XHS async def custom_download(): """自定义参数下载示例""" async with XHS( work_path="./downloads", # 自定义保存路径 folder_name="XHS_Content", # 文件夹名称 name_format="发布时间 作者昵称 作品标题", # 文件名格式 cookie="your_cookie_here", # Cookie配置 image_format="WEBP", # 图片格式 author_archive=True, # 按作者分类 write_mtime=True, # 修改时间为发布时间 ) as xhs: # 下载作品 result = await xhs.extract( "https://www.xiaohongshu.com/explore/作品ID", download=True, index=[1, 2, 3] # 只下载前3张图片 ) print(result)

核心模块结构

XHS-Downloader采用模块化设计,主要模块包括:

  • source/application/:核心应用逻辑

    • download.py:下载功能实现
    • request.py:网络请求处理
    • image.py:图片处理逻辑
    • video.py:视频处理逻辑
  • source/module/:功能模块

    • model.py:数据模型定义
    • settings.py:配置管理
    • tools.py:工具函数
  • source/CLI/:命令行接口

  • source/TUI/:图形界面

适用场景与最佳实践

场景1:内容创作者作品备份

需求:定期备份自己发布的所有作品,保持原始质量

解决方案

  1. 使用浏览器脚本提取所有发布作品链接
  2. 配置author_archive=true按作者分类
  3. 设置write_mtime=true保持文件时间戳
  4. 启用download_record=true避免重复下载

配置示例

python main.py --author_archive true --write_mtime true --name_format "发布时间 作品标题"

场景2:市场研究数据收集

需求:收集特定主题的小红书内容进行分析

解决方案

  1. 使用搜索功能获取相关作品链接
  2. 配置代理避免IP限制
  3. 设置record_data=true保存作品元数据
  4. 使用API模式集成到分析脚本

配置示例

python main.py --proxy "http://proxy.example.com:8080" --record_data true

场景3:个人收藏整理

需求:整理喜欢的作品,按主题分类保存

解决方案

  1. 开启剪贴板监听模式
  2. 浏览时直接复制链接自动下载
  3. 使用folder_mode=true为每个作品创建独立文件夹
  4. 配置note_format="md"保存作品信息为Markdown格式

性能对比与优化建议

不同模式性能对比

功能特性图形界面命令行浏览器脚本API模式MCP模式
易用性⭐⭐⭐⭐⭐⭐⭐⭐☆☆⭐⭐⭐⭐☆⭐⭐☆☆☆⭐⭐⭐☆☆
自动化程度⭐⭐☆☆☆⭐⭐⭐⭐☆⭐⭐⭐☆☆⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐
批量处理⭐⭐⭐☆☆⭐⭐⭐⭐⭐⭐⭐⭐⭐☆⭐⭐⭐⭐⭐⭐⭐⭐⭐☆
集成能力⭐☆☆☆☆⭐⭐☆☆☆⭐⭐⭐☆☆⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐
配置灵活性⭐⭐⭐☆☆⭐⭐⭐⭐⭐⭐⭐☆☆☆⭐⭐⭐⭐☆⭐⭐⭐☆☆

优化建议

  1. 网络环境优化

    • 国内用户建议配置代理服务器
    • 设置合理的timeoutmax_retry参数
    • 使用Cookie获取更稳定的连接
  2. 存储管理优化

    • 定期清理下载记录数据库
    • 使用author_archive按作者分类
    • 配置合适的文件名格式便于搜索
  3. 性能调优

    • 根据网络状况调整chunk大小
    • 启用下载记录避免重复请求
    • 使用合适的图片格式平衡质量和大小

常见问题与解决方案

Q1:下载速度慢怎么办?

A:检查网络连接,尝试配置代理服务器,调整chunk参数大小,或使用Cookie提升连接稳定性。

Q2:视频画质不理想?

A:配置Cookie获取高清视频权限,设置video_preference="resolution"优先选择高分辨率版本。

Q3:链接失效无法下载?

A:使用最新获取的作品链接,避免使用过期链接。小红书链接通常带有时间戳,过期链接可能被风控。

Q4:批量下载时程序卡顿?

A:适当调整max_retrytimeout参数,避免同时处理过多链接,分批处理大数量任务。

Q5:如何避免重复下载?

A:启用download_record=true功能,程序会自动记录已下载作品ID并跳过重复下载。

进阶学习路径

开发者进阶

  1. 源码阅读

    • source/application/download.py开始了解核心下载逻辑
    • 研究source/module/model.py理解数据结构
    • 查看example.py学习API调用方式
  2. 二次开发

    • 基于现有API开发自定义功能
    • 集成到自动化工作流中
    • 开发Web界面或移动端应用
  3. 贡献代码

    • 遵循项目代码规范
    • develop分支开始开发
    • 提交清晰的Pull Request

运维部署

  1. 服务器部署

    • 使用Docker容器化部署
    • 配置反向代理和SSL证书
    • 设置系统服务自启动
  2. 监控维护

    • 监控API服务状态
    • 定期清理日志和临时文件
    • 备份配置和下载记录
  3. 安全加固

    • 配置防火墙规则
    • 使用HTTPS加密传输
    • 定期更新依赖包

技术架构与设计理念

XHS-Downloader采用现代化的Python技术栈,核心设计理念包括:

模块化架构

项目采用清晰的模块化设计,各功能模块职责分明:

  • 应用层:处理用户交互和业务逻辑
  • 服务层:提供API和网络服务
  • 数据层:管理配置和下载记录
  • 工具层:提供通用工具函数

异步处理

充分利用Python的异步特性,实现高效并发:

  • 使用asyncio处理并发请求
  • aiohttp处理网络IO
  • aiosqlite异步数据库操作

配置驱动

所有功能都可通过配置文件灵活调整:

  • JSON格式配置文件
  • 运行时动态加载
  • 支持环境变量覆盖

扩展性设计

预留了丰富的扩展接口:

  • 插件系统支持
  • 自定义下载处理器
  • 多格式输出支持

社区资源与支持

官方资源

  • 项目仓库:包含完整源码和文档
  • 问题反馈:通过GitHub Issues报告问题
  • Discord社区:实时交流和技术支持

学习资料

  • 示例代码example.py提供完整的API使用示例
  • 配置文档:详细的配置参数说明
  • 视频教程:B站和YouTube上的操作演示

最佳实践分享

  1. 定期更新:关注项目更新,获取最新功能和修复
  2. 备份配置:定期备份settings.json配置文件
  3. 参与社区:分享使用经验,帮助其他用户

总结与展望

XHS-Downloader作为一个功能全面的小红书内容采集工具,提供了从简单到复杂的多种使用方式,满足了不同用户群体的需求。无论是个人用户想要保存喜欢的笔记,还是开发者需要集成到自己的应用中,都能找到合适的解决方案。

核心价值

  • 易用性:图形界面让非技术用户也能轻松上手
  • 灵活性:命令行和API提供了强大的定制能力
  • 扩展性:模块化设计支持功能扩展和二次开发
  • 稳定性:完善的错误处理和重试机制

未来展望: 随着小红书的不断更新,XHS-Downloader也将持续迭代,计划中的功能包括:

  • 更多文件格式支持
  • 智能分类和标签系统
  • 云端同步功能
  • 移动端应用

无论你是小红书内容创作者、数据分析师,还是技术开发者,XHS-Downloader都能为你提供高效、稳定的小红书内容采集解决方案。开始使用吧,让内容管理变得更加简单!

【免费下载链接】XHS-Downloader小红书(XiaoHongShu、RedNote)链接提取/作品采集工具:提取账号发布、收藏、点赞、专辑作品链接;提取搜索结果作品、用户链接;采集小红书作品信息;提取小红书作品下载地址;下载小红书作品文件项目地址: https://gitcode.com/gh_mirrors/xh/XHS-Downloader

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

← 返回列表