Global Image Quick Saver PC 使用说明
1. 脚本简介
Global Image Quick Saver PC 是一个浏览器用户脚本,用于在任意网站中快速保存图片。
gitee 仓库地址:https://gitee.com/amzbasara/global-image-quick-saver-pc.git
本脚本由 ChatGPT 纯 AI 生成,人工提供思路;
安装后,在 PC 浏览器中可以通过:
- Windows / Linux:
Alt + 鼠标左键 - macOS:
Option + 鼠标左键
快速保存网页中的图片到本地。
脚本主要解决以下问题:
- 不需要右键菜单即可快速保存图片;
- 支持全站点使用;
- 支持部分
blob:图片链接; - 尽量拦截网站自身的图片点击跳转行为;
- 自动按照
域名-日期时间.后缀的方式命名文件。
2. 适用环境
支持的脚本管理器
推荐使用以下任意一种浏览器用户脚本管理器:
- ScriptCat
- Tampermonkey
- Violentmonkey
支持的浏览器
一般支持 Chromium 系浏览器,例如:
- Chrome
- Edge
- Brave
- Arc
- 其他 Chromium 内核浏览器
Firefox 通常也可以使用,但部分下载行为可能会受到浏览器策略影响。
3. 安装方法
第一步:安装用户脚本管理器
如果你还没有安装用户脚本管理器,先安装以下任意一种:
- ScriptCat
- Tampermonkey
- Violentmonkey
第二步:新建用户脚本
打开脚本管理器后台,选择:
新建脚本
或者:
Create a new script
第三步:粘贴脚本代码
将 Global Image Quick Saver PC 的完整脚本代码粘贴进去。
第四步:保存并启用脚本
保存后确认脚本处于启用状态。
脚本头部应包含类似配置:
// @match *://*/*
// @grant GM_download
// @noframes
// @run-at document-start
其中:
@match *://*/*表示所有 HTTP / HTTPS 网站生效;@grant GM_download用于增强跨域图片下载能力;@noframes表示不在 iframe 中重复运行;@run-at document-start表示尽早启动脚本,方便抢先拦截网站事件。
4. 使用方法
Windows / Linux
按住键盘上的:
Alt
然后用鼠标左键点击网页中的图片。
macOS
按住键盘上的:
Option
然后用鼠标左键点击网页中的图片。
脚本会尝试直接下载该图片,而不是打开图片页面。
5. 文件命名规则
脚本保存图片时,会自动使用以下格式命名:
域名-日期时间.后缀
例如:
ChatGPT-2026-04-29 11-35-37.png
或者:
Fuliba2024-2026-04-29 11-35-37.jpg
为什么时间使用 11-35-37,而不是 11:35:37?
因为 Windows 文件名中不允许出现英文冒号 :。
所以脚本默认使用跨平台安全格式:
YYYY-MM-DD HH-mm-ss
如果强行使用冒号格式,可能会导致 Windows 下载失败,或者浏览器自动修改文件名。
6. 支持的图片类型
脚本会尽量识别并下载以下类型图片:
jpg
jpeg
png
webp
gif
bmp
avif
svg
同时也会尝试处理:
blob:
data:image/
以及部分代理图片地址,例如:
https://img03.sogoucdn.com/.../?appid=122&url=https://example.com/image.jpg
7. 工作原理简述
脚本主要做了几件事:
- 在页面刚开始加载时运行;
- 监听
pointerdown、mousedown等早期鼠标事件; - 判断用户是否按下了
Alt / Option并点击了图片; - 如果命中条件,则阻止网站原本的点击跳转;
- 获取图片真实地址;
- 使用
GM_download、fetch + blob或a[download]尝试下载; - 按照
域名-日期时间.后缀自动命名。
8. 为什么有些网站会打开 blob: 页面?
有些网站不会直接让图片作为普通链接打开,而是通过 JavaScript 监听图片点击事件。
当你点击图片时,网站可能会:
- 读取图片资源;
- 动态生成一个
blob:地址; - 跳转到这个
blob:地址; - 在新页面中展示图片。
例如:
blob:https://example.com/932794da-5bd1-4598-b6fe-206814324119
脚本通过提前监听 pointerdown 和 mousedown,尽量在网站自己的点击逻辑执行前拦截事件,从而避免跳转。
9. 常见问题
9.1 按 Alt / Option + 左键后没有下载
可能原因:
- 脚本没有启用;
- 当前网站被脚本管理器排除了;
- 浏览器拦截了自动下载;
- 图片不是真正的
<img>元素,而是 CSS 背景图; - 网站的事件监听比脚本更早或更强;
- 图片资源跨域限制较严格。
可以尝试:
- 确认脚本启用;
- 刷新页面;
- 查看浏览器是否弹出下载权限提示;
- 打开开发者工具控制台查看脚本日志;
- 确认脚本头部有
@grant GM_download。
9.2 为什么下载的是 .jpg,不是原来的后缀?
如果图片地址中无法可靠判断后缀,脚本会尝试根据响应的 mimeType 判断。
如果仍然无法判断,则默认使用:
jpg
这是为了保证文件至少能被大多数图片查看器识别。
9.3 为什么某些图片保存下来打不开?
可能原因:
- 下载到的是网站返回的错误页面;
- 图片需要登录态或特殊请求头;
- 图片地址是临时地址,点击时已经失效;
- 网站使用了防盗链;
- 跨域下载失败后进入了兜底逻辑。
这种情况通常不是脚本语法问题,而是网站资源访问策略导致的。
9.4 为什么脚本要用 GM_download?
普通网页脚本使用 <a download> 下载跨域图片时,可能会被浏览器当成普通跳转处理。
GM_download 是用户脚本管理器提供的下载能力,对跨域图片更稳定。
因此脚本优先使用:
GM_download
如果失败,再尝试:
fetch + blob
最后兜底使用:
a[download]
9.5 能不能支持手机端?
可以。
但当前版本主要针对 PC 端。
手机端通常可以设计为:
长按图片保存
不过长按图片可能会和浏览器原生菜单、网站菜单、复制图片、识图功能冲突,所以建议单独做成可开关版本。
10. 当前版本限制
当前脚本仍有一些限制:
- 不一定能保存 CSS
background-image; - 不一定能保存 canvas 绘制出来的图片;
- 不一定能绕过所有网站的防盗链策略;
- 不一定能处理所有 iframe 内图片;
- 某些浏览器可能会要求用户确认下载权限;
- 部分网站可能使用非常规事件逻辑,仍可能触发跳转。
11. 建议后续增强方向
可以继续扩展以下功能:
- 支持保存 CSS 背景图;
- 支持保存 canvas 图片;
- 下载成功后右下角弹出提示;
- 支持自定义文件名前缀;
- 支持自定义快捷键;
- 支持手机端长按保存;
- 支持失败时复制图片地址;
- 支持批量保存页面所有图片。
12. 推荐使用习惯
建议使用方式:
- 先刷新目标网页;
- 鼠标移动到目标图片上;
- 按住
Alt / Option; - 左键点击图片;
- 松开按键;
- 查看浏览器下载栏。
如果图片被网站劫持打开新页面,可以再次确认脚本是否是最新版,并检查脚本是否在当前网站启用。
13. 示例
示例 1:ChatGPT 页面
保存文件名可能是:
ChatGPT-2026-04-29 11-35-37.png
示例 2:fuliba2024.net 页面
保存文件名可能是:
Fuliba2024-2026-04-29 11-35-37.jpg
14. 简短总结
这个脚本的核心用途是:
按住 Alt / Option,左键点击图片,快速保存到本地。
文件名格式为:
域名-日期时间.后缀
适合在经常浏览图片、需要快速保存素材或网页图片时使用。