🔥 小红书链接提取/作品采集工具:提取账号发布、收藏、点赞、专辑作品链接;提取搜索结果作品链接、用户链接;采集小红书作品信息;提取小红书作品下载地址;下载小红书无水印作品文件!
🔥 “小红书”、“XiaoHongShu”、“RedNote” 含义相同,本项目统称为 “小红书”
⭐ 本项目完全免费开源,无任何收费功能,请勿上当受骗!
📑 项目功能
- 程序功能
- ✅ 采集小红书作品信息
- ✅ 提取小红书作品下载地址
- ✅ 下载小红书无水印作品文件
- ✅ 下载小红书 livePhoto 文件(非无水印)
- ✅ 自动跳过已下载的作品文件
- ✅ 作品文件完整性处理机制
- ✅ 自定义图文作品文件下载格式
- ✅ 持久化储存作品信息至文件
- ✅ 作品文件储存至单独文件夹
- ✅ 后台监听剪贴板下载作品
- ✅ 记录已下载作品 ID
- ✅ 支持命令行下载作品文件
- ✅ 从浏览器读取 Cookie
- ✅ 自定义文件名称格式
- ✅ 支持 API 调用功能
- ✅ 支持文件断点续传下载
- ✅ 智能识别作品文件类型
- ✅ 支持设置作者备注
- ✅ 自动更新作者昵称
- 脚本功能
- ✅ 下载小红书无水印作品文件
- ✅ 提取推荐页面作品链接
- ✅ 提取账号发布作品链接
- ✅ 提取账号收藏作品链接
- ✅ 提取账号点赞作品链接
- ✅ 提取账号专辑作品链接
- ✅ 提取搜索结果作品链接
- ✅ 提取搜索结果用户链接
支持Windows系统与Mac系统
下载地址:https://pan.quark.cn/s/e9bb2bbfedfb
📸 程序截图
🎥 点击图片观看演示视频
🔗 支持链接
- https://www.xiaohongshu.com/explore/作品ID?xsec_token=XXX
- https://www.xiaohongshu.com/discovery/item/作品ID?xsec_token=XXX
- https://xhslink.com/分享码
- 支持单次输入多个作品链接,链接之间使用空格分隔;程序会自动提取有效链接,无需额外处理!
🪟 关于终端
⭐ 推荐使用 Windows 终端 (Windows 11 默认终端)运行程序以便获得最佳显示效果!
🥣 使用方法
如果仅需下载无水印作品文件,建议选择 程序运行 或 Docker 运行;如果有其他需求,建议选择 源码运行!
2.2 版本开始,项目功能无异常的情况下,无需额外处理 Cookie!
🖱 程序运行
⭐ Mac OS、Windows 10 及以上用户可前往 下载程序压缩包,解压后打开程序文件夹,双击运行 main 即可使用。
⭐ 本项目包含自动构建可执行文件的 GitHub Actions,使用者可以随时使用 GitHub Actions 将最新源码构建为可执行文件!
注意:Mac OS 平台可执行文件 main 可能需要从终端命令行启动;受设备限制,Mac OS 平台可执行文件尚未经过测试,无法保证可用性!
若通过此方式使用程序,文件默认下载路径为:.\_internal\Download;配置文件路径为:.\_internal\settings.json
⌨️ Docker 运行
- 获取镜像
- 方式一:使用 Dockerfile 文件构建镜像
- 方式二:使用 docker pull joeanamier/xhs-downloader 命令拉取镜像
- 方式三:使用 docker pull ghcr.io/joeanamier/xhs-downloader 命令拉取镜像
- 创建容器
- TUI 模式:docker run –name 容器名称(可选) -p 主机端口号:6666 -v xhs_downloader_volume:/app -it joeanamier/xhs-downloader
- API 模式:docker run –name 容器名称(可选) -p 主机端口号:6666 -v xhs_downloader_volume:/app -it joeanamier/xhs-downloader python main.py server
- 运行容器
- 启动容器:docker start -i 容器名称/容器 ID
- 重启容器:docker restart -i 容器名称/容器 ID
Docker 运行项目时不支持 命令行调用模式,无法使用 读取剪贴板 与 监听剪贴板 功能,可以正常粘贴内容,其他功能如有异常请反馈!
⌨️ 源码运行
- 安装版本号为 3.12 的 Python 解释器
- 下载本项目最新的源码或 Releases 发布的源码至本地
- 打开终端,切换至项目根路径
- 运行 pip install -i https://pypi.tuna.tsinghua.edu.cn/simple -r requirements.txt 命令安装程序所需模块
- 运行 main.py 即可使用
🛠 命令行模式
项目支持命令行运行模式,若想要下载图文作品的部分图片,可以使用此模式设置需要下载的图片序号!
可以使用命令行 从浏览器读取 Cookie 并写入配置文件!
命令示例:python .\main.py –browser_cookie Chrome –update_settings
bool 类型参数支持使用 true、false、1、0、yes、no、on 或 off(不区分大小写)来设置。
🖥 服务器模式
启动:运行命令:python .\main.py server
关闭:按下 Ctrl + C 关闭服务器
访问 http://127.0.0.1:6666/docs 或者 http://127.0.0.1:6666/redoc;你会看到自动生成的交互式 API 文档!
请求接口:/xhs/
请求方法:POST
请求格式:JSON
请求参数:
参数 | 类型 | 含义 | 默认值 |
url | str | 小红书作品链接,自动提取,不支持多链接;必需参数 | 无 |
download | bool | 是否下载作品文件;设置为 true 将会耗费更多时间;可选参数 | false |
index | list[int] | 下载指定序号的图片文件,仅对图文作品生效;download 参数设置为 false 时不生效;可选参数 | null |
cookie | str | 请求数据时使用的 Cookie;可选参数 | 配置文件 cookie 参数 |
proxy | str | 请求数据时使用的代理;可选参数 | 配置文件 proxy 参数 |
skip | bool | 是否跳过存在下载记录的作品;设置为 true 将不会返回存在下载记录的作品数据;可选参数 | false |
代码示例:
async def example_api():
“””通过 API 设置参数,适合二次开发”””
server = “http://127.0.0.1:6666/xhs/”
data = {
“url”: “”, # 必需参数
“download”: True,
“index”: [
3,
6,
9,
],
“proxy”: “http://127.0.0.1:10808”,
}
response = post(server, json=data, timeout=10)
print(response.json())
📜 其他说明
- 由于作品链接携带日期信息,使用先前日期获取的作品链接可能会被风控,建议下载作品文件时使用最新获取的作品链接
- Windows 系统需要以管理员身份运行程序才能读取 Chromium、Chrome、Edge 浏览器 Cookie
- 如果开启保存作品数据至文件功能,作品数据默认储存至 ./Download/ExploreData.db 文件
- 程序下载记录数据储存至 ./ExploreID.db 文件
🕹 用户脚本
如果您的浏览器安装了 Tampermonkey 浏览器扩展程序,可以添加 用户脚本(右键单击复制链接),无需下载安装即可体验项目功能!
提示:使用 XHS-Downloader 用户脚本批量提取作品链接,搭配 XHS-Downloader 程序可以实现批量下载无水印作品文件!
📜 脚本说明
- 下载小红书无水印作品文件时,脚本需要花费时间处理文件,请等待片刻,请勿多次点击下载按钮
- 无水印图片文件为 PNG 格式;无水印视频文件较大,可能需要较长的时间处理,页面跳转可能会导致下载失败
- 提取账号发布、收藏、点赞、专辑作品链接时,脚本可以自动滚动页面直至加载全部作品
- 提取推荐作品链接、搜索作品、用户链接时,脚本可以自动滚动指定次数加载更多内容,默认滚动次数:50 次
- 自动滚动页面功能默认关闭;用户可以自由开启,并修改滚动页面次数,修改后立即生效
- 如果未开启自动滚动页面功能,用户需要手动滚动页面以便加载更多内容后再进行其他操作
- 支持作品文件打包下载;该功能默认开启,多个文件的作品将会以压缩包格式下载
- 使用全局代理工具可能会导致脚本下载文件失败,如有异常,请尝试关闭代理工具,必要时向作者反馈
- XHS-Downloader 用户脚本仅实现可见即可得的数据采集功能,无任何收费功能和破解功能
自动滚动页面功能代码已重构,该功能默认关闭!启用该功能可能会被小红书检测为自动化操作,从而导致账号受到风控或封禁风险!
支持Windows系统与Mac系统
下载地址:https://pan.quark.cn/s/e9bb2bbfedfb
评论