应用截图
详细介绍
浏览和下载网页上的图片。
Image Downloader Continued(IDC)
================
这是 Vlad Sabev(vdsabev)的 Image Downloader 的一个分支。原扩展程序已不再更新,本项目旨在填补这一空缺。目标是修复错误、支持更多网站(越多越好),并添加新功能和改进。欢迎提出建议,请在 GitHub 上提交问题!IDC 不出售,并将永远免费、开源,且不含广告或任何形式的跟踪算法!源代码见:https://github.com/kisdma/image-downloader-cnt
说明
================
如果您需要批量下载网页图片,此扩展程序可以让您:
- 查看页面包含和链接的图片
- 按宽度、高度和网址筛选,支持通配符和正则表达式
- 点击图片以选择要下载的图片
- 使用专用按钮下载单张图片或在新标签页中打开
- 自定义图片显示宽度、列数、边框大小和颜色
- 隐藏不需要的筛选条件、按钮和通知
按下“下载”按钮后,所有选中的图片都会保存到 Chrome 的默认下载目录;如果指定了子文件夹名称,则保存到该目录下的子文件夹中。
警告:如果尚未设置默认下载目录,您必须为每张图片手动选择保存位置,这可能会打开大量弹出窗口。没有默认下载目录时,不建议一次下载过多图片。
更新日志
================
2.8:
改进图片发现和收集,修复大量错误
- 添加注入脚本,防止页面关闭 shadowDOM(这会导致其中的图片无法被发现)。注意:网站使用此方法绕过广告拦截器
- 添加对 shadowDOM 中图片的发现功能
- 添加 CSS 样式插入功能,防止 IDC 添加的图片被广告拦截器拦截(仅影响 class 为 'idc-image' 的元素)
- 添加监听器以跟踪 DOM 变化,发现 YouTube 中间歇出现的 webp 图片(类似动态 GIF 的图片),或 Instagram 滚动时不断添加和删除的图片
- 将发现的图片列表作为序列化数组保存在页面的隐藏标签中(页面更新时消失)
- 修复提交的下载数量多计 1 个的错误
- 改进正则表达式,以便更好地发现 'style' 标签中的图片(此前会遗漏部分 data:image 网址)
- 整理检查相对网址并在必要时转换为绝对网址的代码,将其移入一个函数,并在此前缺少此检查的标签中使用该函数
- 改进观察器,使其能发现弹出窗口等临时元素中的更多图片(扩展了属性筛选列表)
- 改进 'svg' 标签中的图片发现:如果包含 image 标签,则返回其中的图片,而不是构建 base64 SVG
- 从填充和访问图片缓存的代码中移除 encodeURI()。由于传入链接从本应已经编码的标签中提取,其用途不明。它会破坏已经编码且特殊字符已转义的链接(在 Wikipedia 上发现了带括号的链接存在此问题)
- 修复解析 'source' 标签的错误,支持 'srcset' 中不同分辨率的列表(1x、2x 等)
- 修复 popup.js 中重复添加 YouTube 图片的问题
- 修复基础网址以反斜杠结尾时构造出错误网址的问题
- 修复解析 img 标签的错误
- 修复 relativeUrlToAbsolute 在输入为空时返回“undefined”的错误
- 添加对网址查询部分含服务器“resize”命令的链接的发现功能;添加不含该命令的链接可获得分辨率更高的图片
2.7:
改进图片发现,修复代码和设计中的错误
- 更新弹出窗口外观,将图片放在卡片中并显示更多信息,在选项中添加卡片颜色选择
- 修复多个错误,改进多种情况下的图片发现,包括使用深度 CSS 解析替代失效的 styleSheets API
- 添加每张图片的以图搜图网站快捷方式(Google、Bing、Yandex、TinEye)
2.5:
- 添加图片尺寸和文件名显示(可在设置中关闭)
- 添加按尺寸排序图片的功能,提供两个新选项:1)仅按宽度排序(默认)或按宽度和高度排序;2)从大到小(默认)或反向排序
- 对高度超过 200px 的图片进行垂直缩放
- 修复无法从 'svg' 标签读取 SVG 格式的问题
- 添加从 'video' 标签的 'poster' 读取图片的功能
- 修复背景图片无法识别的问题。读取 styleSheets(以读取 cssRules)似乎不可行。已采用变通方法:通过 'link' 标签获取的链接抓取 CSS 文件。注意:部分网站使用不同的二级域名存储 CSS,此时如果扩展程序没有 'all_urls'(或特定域名)权限,抓取将失败。这只会导致部分图片不显示。如果对此有顾虑,可在 Chrome 扩展程序中移除该权限。
- 添加 Google 地图和街景照片的最高分辨率图片发现功能(发现了未公开的 API)
- 添加 YouTube 缩略图的高分辨率预览,包括当前页面的视频
- 修正解析 'a' 标签链接的正则表达式,避免发现非图片链接
2.4.2:
- 变通解决 Chrome 禁止访问跨域 CSS 规则的问题
2.4.1:
- 修复无效网址导致扩展程序出错的问题:https://github.com/vdsabev/image-downloader/issues/23
- 将 Zepto.js 更新至 1.2.0
2.4:
- 添加下载前重命名文件的选项
2.3:
- 添加对 BMP、SVG 和 WebP 图片的支持
- 添加对相对网址的支持
- 通过搜索更少的元素提高弹出窗口加载速度
- 将已弃用的 `chrome.extension` 调用替换为 `chrome.runtime`
2.2:
- 移除不必要的标签页访问权限
- 因部分用户投诉捐赠提示未按预期在首次显示后消失,移除该提示;现在首次安装时将打开选项页面
- 保存网址筛选条件的值
- 再次尝试修复一些尺寸问题
2.1:
- 添加图片宽度和高度筛选条件
- 因部分用户遇到尺寸问题,增加一次性重置所有设置的操作
- 移除按网址排序选项
2.0:
- 添加将文件保存到子文件夹的功能
- 使用 Google Chrome 下载 API
- 实现更简洁的网格布局
- 点击图片网址文本框时会自动选中文本,方便用户复制
- 修复一些轻微的显示问题
- 添加列数设置,移除边框样式设置
- 在选项页面添加捐赠按钮
1.3:
- 现在也会将 style 标签中使用的图片添加到列表末尾。此前只包含元素内联 style 属性中的图片
- 添加对 data URI 的支持
- 多项错误修复和优化
1.2:
- 将图片上方的网址改为显示在只读文本框中
- 将图片复选框移到顶部,并在每张图片下方添加打开和下载按钮
- 初始状态下禁用“下载”按钮和“全部”复选框
- 添加几个用于隐藏筛选条件、按钮和通知的新选项
- 移除正文宽度选项;弹出窗口宽度现在会根据最大图片宽度选项调整
- 简化设计
1.1:
- 修复最小和最大图片宽度的保存问题
- 在图片上方添加网址及显示开关选项
- 添加通配符筛选模式(与普通和正则表达式模式并列)
- 现在会保存所选筛选条件的状态
- 将“按网址排序”选项移回筛选区域
- 在选项页面添加“清除数据”按钮。虽然扩展程序目前使用的本地存储空间不多,但有些人可能需要此选项
- 重构大量代码,尤其是使用本地存储的代码
1.0.13:
- 添加通知,告知用户下载已开始
- 添加一些动画,并进一步优化选项通知
- 修复某些事件处理程序被多次附加的问题
1.0.12:
- 迁移至 jQuery
- 为“全部”复选框实现不确定状态
- 未选中图片时,“下载”按钮将被禁用
- 修复重置选项的错误:现在用户可以选择保存重置后的值,或直接重新加载页面取消重置,与通知中的说明一致
1.0.11:
- 更改下载机制以支持 Chrome v21+
- 添加“仅显示链接的图片”筛选选项,适合只想下载页面网址中图片的用户
1.0.10:
- 添加下载确认
1.0.9:
- 现在会在“全部”复选框旁显示图片数量
1.0.8:
- 添加对锚点标签中图片网址的检测;请注意,此功能无法检测没有 .jpg、.jpeg、.gif 或 .png 文件扩展名的网址,因为它依赖正则表达式,以避免可能向外部服务器发送数百个请求
1.0.7:
- 移除按下“下载”时弹出的桌面通知系统,改用文本说明,使其更容易通过选项控制且干扰更少;这也应减少扩展程序所需的权限
- 添加隐藏下载通知的选项;大多数人只需阅读一次就能理解下载过程
- 对用户界面进行一些小幅调整
1.0.6:
- 修复出现多个不必要的空图片的问题
1.0.5:
- 现在也会提取使用 CSS 属性“background-image”显示图片的元素
1.0.4:
- 添加通知,提醒用户下载已开始并说明到哪里查找文件
致谢
================
基于 Google Chrome 扩展程序示例“Download Selected Links”:https://developer.chrome.com/extensions/examples/api/downloads/download_links.zip
使用小巧而出色的 JSS 库:https://github.com/Box9/jss
以及 Zepto.js:http://zeptojs.com
图片:
download.svg 来自 oNline Web Fonts,采用 CC BY 3.0 许可:http://www.onlinewebfonts.com/icon
open.svg 来自 oNline Web Fonts,采用 CC BY 3.0 许可:http://www.onlinewebfonts.com/icon
许可证
================
版权所有 (c) 2019 Dmitry Kislitsyn, Vladimir Sabev
特此免费授予任何获得本软件及相关文档文件(以下简称“软件”)副本的人不受限制地处置本软件的权利,包括但不限于使用、复制、修改、合并、发布、分发、再许可和/或出售软件副本的权利,并允许获得软件的人这样做,但须满足以下条件:
上述版权声明和本许可声明应包含在软件的所有副本或主要部分中。
本软件按“原样”提供,不提供任何明示或暗示的保证,包括但不限于适销性、特定用途适用性和不侵权保证。在任何情况下,作者或版权持有人均不对因本软件或本软件的使用或其他处置而产生、引起或与之相关的任何索赔、损害或其他责任承担责任,无论是在合同诉讼、侵权诉讼还是其他诉讼中。