XHS-Downloader图片格式转换的3种玩法:HEIC、WEBP一键换成你想要的格式
【免费下载链接】XHS-Downloader小红书(XiaoHongShu、RedNote)链接提取/作品采集工具:提取账号发布、收藏、点赞、专辑作品链接;提取搜索结果作品、用户链接;采集小红书作品信息;提取小红书作品下载地址;下载小红书作品文件项目地址: https://gitcode.com/gh_mirrors/xh/XHS-Downloader
上个月我用 XHS-Downloader 采集一批小红书风景笔记,回家整理素材时傻了眼——电脑上全是打不开的 HEIC 文件,发给客户做排版又被退回,理由就一句"我们只要 JPG"。折腾了一晚上我才搞明白,原来这款小红书采集工具自带图片格式转换能力,只是我一开始没找到入口。这篇就把我踩坑换来的经验完整讲给你听,看完你也能让下载的每张图片直接变成想要的样子。
读完你将收获:
- 弄清楚 6 种图片格式选项各自适合什么场景,不再盲目选择
- 掌握 3 种设置图片格式的途径:图形界面、命令行、代码参数
- 学会用 TUI 下拉菜单和 CLI 参数在下载前就把格式定好
- 拿到 3 个高频问题的排查方法,转换失败不再抓瞎
格式选项全景:先想清楚要什么,再动手下载
XHS-Downloader 在下载环节就能完成格式转换,你只需要在下载前告诉它"我要什么格式"。可选范围如下:
| 格式选项 | 特点 | 适合谁用 |
|---|---|---|
| AUTO | 保持小红书原始格式 | 想要原汁原味素材的收藏党 |
| PNG | 无损压缩,支持透明背景 | 设计师、需要二次编辑的场景 |
| WEBP | 压缩率高,文件体积小 | 网页素材、节省硬盘空间 |
| JPEG | 兼容性最好,到处都能打开 | 投稿、发客户、通用分享 |
| HEIC | 苹果生态原生格式 | iPhone 用户自己留存 |
| AVIF | 新一代高效编码 | 追求极致小体积的极客 |
原理其实很简单:转换发生在服务器端
很多人以为下载后要本地跑一遍转换脚本,其实不用。关键代码在source/application/image.py的get_image_link方法里,它把格式拼进图片 URL,由小红书 CDN 直接返回转换好的图片:
# source/application/image.py match format_: case "png" | "webp" | "jpeg" | "heic" | "avif": return [ Html.format_url(cls.__generate_fixed_link(i, format_)) for i in token_list ], live_link case "auto": return [ Html.format_url(cls.__generate_auto_link(i)) for i in token_list ], live_link一句话解释:选固定格式时,URL 会带上imageView2/format/{格式}参数,下载到的直接就是目标格式;选 AUTO 则保留原链接原格式。所以你本地什么转换软件都不用装。
动手实操:3 种设置方式,从易到难
方式一(首选):TUI 界面下拉框,几秒钟搞定
我最推荐普通用户走这条路,全程不用敲命令。在项目根目录启动程序进入 TUI 界面后,按下图操作:
- 在主界面按
S键进入"程序设置"面板 - 往下滚动找到"图片下载格式"下拉菜单
- 用方向键选中你想要的格式(如 JPEG),按回车确认
- 点"保存配置"返回,之后下载的所有图文作品都会按新格式输出
下拉菜单里内置了 AUTO、PNG、WEBP、JPEG、HEIC 五个选项,覆盖绝大多数需求。保存一次长期生效,非常适合不熟悉命令行的朋友。
方式二(通用):命令行参数,随用随设
临时转换一批作品时,命令行是最直接的。假设我想把某篇笔记的图片全部转成 JPEG,只需要:
python main.py --image-format JPEG -u "https://www.xiaohongshu.com/explore/XXX?xsec_token=XXX"--image-format(简写-if)就是格式开关,配合-u传入链接即可。想一次处理多篇笔记,链接用空格隔开就行。命令行界面的参数说明长这样:
需要提醒的是:命令行入口目前开放的是 PNG、WEBP 两项(源码中Choice(["png", "PNG", "webp", "WEBP"])),对应source/CLI/main.py。想要 JPEG、HEIC,请用方式一或方式三。
方式三(进阶):代码参数,二次开发者的自由玩法
如果你在基于 XHS-Downloader 做二次开发,可以直接在实例化时传image_format参数,全格式任选。参考example.py的写法:
from source import XHS async def main(): async with XHS( image_format="HEIC", # 支持 AUTO/PNG/WEBP/JPEG/HEIC/AVIF # work_path="D:\\", # 保存根路径 # folder_name="Download", ) as xhs: await xhs.extract( "https://www.xiaohongshu.com/explore/XXX?xsec_token=XXX", download=True, )example.py第 25 行附近还给出了六种格式的注释示例,直接取消注释切换即可。这一层适合写脚本、接自动化流程的场景,参数与 TUI、CLI 共用同一套配置体系,互不冲突。
避坑速查:3 个高频问题一次说清
Q1:命令行传--image-format HEIC报错,是坏了吗?不是 bug。CLI 入口目前只开放 PNG/WEBP 两个选项(源码里的Choice限制),其余格式请改用 TUI 下拉菜单或代码参数设置,这是设计如此,不是程序故障。
Q2:明明设了 JPEG,下载下来却还是原始格式?先确认有没有误选 AUTO——AUTO 的含义就是"保持原始格式"。另外在 TUI 里改完设置后一定要点"保存配置",没保存就退出,改动会全部丢失。
Q3:格式转换时下载失败或卡住怎么办?按顺序排查:先确认网络能正常访问图片服务器,必要时在设置里配置代理;再核对格式名是否在支持列表内(注意是WEBP而不是Webp);最后检查是否已更新到最新版本,旧版本可能存在已知问题,更新入口就在 TUI 主界面。
写在最后
格式转换这个功能,把"下载图片"和"图片可用"两件事一次做完,省掉了批量转码的繁琐步骤。对我这种素材要反复交付的人来说,省下的不只是时间,还有来回沟通的麻烦。项目未来的方向也值得期待——配置体系中还有更多参数在持续丰富,比如按作者归档、文件命名规则等,图片相关的自定义能力大概率还会继续增强。你现在就可以把项目克隆到本地试试:
git clone https://gitcode.com/gh_mirrors/xh/XHS-Downloader提示:新功能与格式支持变动会同步更新在项目
static/Release_Notes.md中,升级前花一分钟扫一眼,能避免不少"格式突然不能用了"的疑惑。
【免费下载链接】XHS-Downloader小红书(XiaoHongShu、RedNote)链接提取/作品采集工具:提取账号发布、收藏、点赞、专辑作品链接;提取搜索结果作品、用户链接;采集小红书作品信息;提取小红书作品下载地址;下载小红书作品文件项目地址: https://gitcode.com/gh_mirrors/xh/XHS-Downloader
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考