背景
之前每次想从网页批量保存图片都很痛苦:
- 右键被禁用是常态
- CSS background-image 完全抓不到
- 懒加载和 srcset 经常漏
- 现成的"图片下载器"插件要么夹私货,要么漏图严重
正好之前一直想做个 Chrome 插件练练手,就花了 3 个月时间从头写了一个。

项目链接
- 安装:https://chromewebstore.google.com/detail/iecgnjidmogebokcfnejncgnelcepffo
- 官网:https://image-harvest.kyriewen.cn
- 留评:https://chromewebstore.google.com/detail/iecgnjidmogebokcfnejncgnelcepffo/reviews
主要功能(免费)
- 深度扫描页面所有图片源(img / picture / srcset / CSS background / iframe)
- 递归遍历开放的 Shadow DOM(闭合的肯定不行)
- 按尺寸 / 格式 / 比例 / URL 关键词过滤
- 单次最多打包 ZIP 下载 20 张
- 反向以图搜图(Google)
- Side Panel + Popup 双形态,亮 / 暗主题,3 种密度
Pro 功能(解锁)
- 不限制 ZIP 下载数量、支持格式转换
- 多标签页同时扒图
- 基于感知哈希(pHash)的相似图片检测
- 反向搜图扩展到 4 个引擎(Google / TinEye / Baidu / Yandex)
- 颜色提取(HEX 复制)
- 收藏夹(带标签和备注)
- 实时监听新图片(MutationObserver)
技术栈
- 纯 vanilla JS,故意不用框架,bundle 控制在 1MB 内
- Manifest V3,没有任何远程代码
- pHash 在 Web Worker 里跑,单图大约 50ms
- chrome.storage.session 缓存提取状态,重开 panel 秒开
- 全程本地处理,零分析、零追踪
踩过的几个坑(如果有人也在写 MV3 可能用得上)
- Shadow DOM 里 CSS background 提取要靠 getComputedStyle 递归
- MV3 的 service worker 冷启动延迟很恶心,必须做缓存
- iframe 跨域时 chrome.scripting.executeScript 要 frameIds 全发
- Side Panel API 的窄宽度适配比想象中难,我做了 3 套密度预设
求 V
刚上架,几乎没用户。如果觉得还行求大家试用一下,bug 或者功能建议直接 reply。
如果用得顺手的话真心求一个 Chrome Web Store 5 星好评,对个人项目就是命:
https://chromewebstore.google.com/detail/iecgnjidmogebokcfnejncgnelcepffo/reviews
谢谢各位 ![]()