- ✅ 采集小红书图文 / 视频作品信息
- ✅ 提取小红书图文 / 视频作品下载地址
- ✅ 下载小红书无水印图文 / 视频作品文件
- ✅ 自动跳过已下载的作品文件
- ✅ 作品文件完整性处理机制
- ✅ 持久化储存作品信息至文件
- ✅ 作品文件储存至单独文件夹
- ☑️ 后台监听剪贴板下载作品
- ☑️ 支持 API 调用功能
🎥 点击图片观看演示视频
https://www.xiaohongshu.com/explore/作品ID
https://www.xiaohongshu.com/discovery/item/作品ID
https://xhslink.com/分享码
支持单次输入多个作品链接,链接之间使用空格分隔。
⭐ 推荐使用 Windows 终端 (Windows 11 自带默认终端)运行程序以便获得最佳显示效果!
如果仅需下载无水印作品文件,建议选择 程序运行;如果有其他需求,建议选择 源码运行!
Windows 10 及以上用户可前往 Releases 下载程序压缩包,解压后打开程序文件夹,双击运行 main.exe
即可使用。
若通过此方式使用程序,文件默认下载路径:.\_internal\Download
;配置文件路径:.\_internal\settings.json
- 安装版本号不低于
3.12
的 Python 解释器 - 运行
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple -r requirements.txt
命令安装程序所需模块 - 下载本项目最新的源码或 Releases 发布的源码至本地
- 运行
main.py
即可使用
如果有其他需求,可以根据 main.py
的注释提示进行代码调用或修改!
# 测试链接 error_demo = "https://github.com/JoeanAmier/XHS_Downloader" image_demo = "https://www.xiaohongshu.com/explore/63b275a30000000019020185" video_demo = "https://www.xiaohongshu.com/explore/64edb460000000001f03cadc" multiple_demo = f"{image_demo} {video_demo}" # 实例对象 path = "" # 作品数据/文件保存根路径,默认值:项目根路径 folder_name = "Download" # 作品文件储存文件夹名称(自动创建),默认值:Download user_agent = "" # 请求头 User-Agent cookie = "" # 小红书网页版 Cookie,无需登录 proxy = None # 网络代理 timeout = 5 # 请求数据超时限制,单位:秒,默认值:10 chunk = 1024 * 1024 * 10 # 下载文件时,每次从服务器获取的数据块大小,单位:字节 max_retry = 2 # 请求数据失败时,重试的最大次数,单位:秒,默认值:5 record_data = False # 是否记录作品数据至文件 image_format = "jpg" # 图文作品文件名称后缀 folder_mode = False # 是否将每个作品的文件储存至单独的文件夹 async with XHS() as xhs: pass # 使用默认参数 async with XHS(path=path, folder_name=folder_name, user_agent=user_agent, cookie=cookie, proxy=proxy, timeout=timeout, chunk=chunk, max_retry=max_retry, record_data=record_data, image_format=image_format, folder_mode=folder_mode, ) as xhs: # 使用自定义参数 download = True # 是否下载作品文件,默认值:False # 返回作品详细信息,包括下载地址 print(await xhs.extract(error_demo, download)) # 获取数据失败时返回空字典 print(await xhs.extract(image_demo, download)) print(await xhs.extract(video_demo, download)) print(await xhs.extract(multiple_demo, download)) # 支持传入多个作品链接
项目根目录下的 settings.json
文件,首次运行自动生成,可以自定义部分运行参数。
如果您的计算机没有合适的程序编辑 JSON 文件,建议使用 JSON 在线工具 编辑配置文件内容
参数 | 类型 | 含义 | 默认值 |
---|---|---|---|
path | str | 作品数据 / 文件保存根路径 | 项目根路径 |
folder_name | str | 作品文件储存文件夹名称 | Download |
user_agent | str | 请求头 User-Agent | 默认 UA |
cookie | str | 小红书网页版 Cookie,无需登录 | 默认 Cookie |
proxy | str | 设置程序代理 | null |
timeout | int | 请求数据超时限制,单位:秒 | 10 |
chunk | int | 下载文件时,每次从服务器获取的数据块大小,单位:字节 | 1048576(1 MB) |
max_retry | int | 请求数据失败时,重试的最大次数,单位:秒 | 5 |
record_data | bool | 是否记录作品数据至 TXT 文件 |
false |
image_format | str | 图文作品文件名称后缀,不影响实际文件格式 | webp |
video_format | str | 视频作品文件名称后缀,不影响实际文件格式 | mp4 |
folder_mode | bool | 是否将每个作品的文件储存至单独的文件夹;文件夹名称与文件名称保持一致 | false |
- 打开浏览器(可选无痕模式启动),访问小红书任意网页
- 按
F12
打开开发人员工具 - 选择
控制台
选项卡 - 输入
document.cookie
后回车确认 - 输出内容即为所需 Cookie
如果您的浏览器安装了 Tampermonkey 浏览器扩展程序,可以 点击安装 用户脚本,无需下载即可体验!
如果 XHS-Downloader 对您有帮助,请考虑为它点个 Star ⭐,感谢您的支持!
微信(WeChat) | 支付宝(Alipay) |
---|---|
如果您愿意,可以考虑提供资助为 XHS-Downloader 提供额外的支持!
- QQ: 2437596031(联系请说明来意)
- QQ Group: 点击扫码加入群聊
- Email: yonglelolu@gmail.com
XHS-Downloader 是我个人独立维护的一个开源项目,鉴于个人精力有限,请理解项目进展可能较为缓慢,我会尽力保持更新和维护,以确保项目的稳定性和功能的不断改进。
如果您通过 Email 联系我,我可能无法及时查看并回复信息,我会尽力在七天内回复您的邮件;如果有紧急事项或需要更快的回复,请通过其他方式与我联系,谢谢理解!
如果您对抖音 / TikTok 感兴趣,可以了解一下我的另一个开源项目 TikTokDownloader
- 使用者对本项目的使用由使用者自行决定,并自行承担风险。作者对使用者使用本项目所产生的任何损失、责任、或风险概不负责。
- 本项目的作者提供的代码和功能是基于现有知识和技术的开发成果。作者尽力确保代码的正确性和安全性,但不保证代码完全没有错误或缺陷。
- 使用者在使用本项目时必须严格遵守 GNU General Public License v3.0 的要求,并在适当的地方注明使用了 GNU General Public License v3.0 的代码。
- 使用者在任何情况下均不得将本项目的作者、贡献者或其他相关方与使用者的使用行为联系起来,或要求其对使用者使用本项目所产生的任何损失或损害负责。
- 使用者在使用本项目的代码和功能时,必须自行研究相关法律法规,并确保其使用行为合法合规。任何因违反法律法规而导致的法律责任和风险,均由使用者自行承担。
- 本项目的作者不会提供 XHS-Downloader 项目的付费版本,也不会提供与 XHS-Downloader 项目相关的任何商业服务。
- 基于本项目进行的任何二次开发、修改或编译的程序与原创作者无关,原创作者不承担与二次开发行为或其结果相关的任何责任,使用者应自行对因二次开发可能带来的各种情况负全部责任。