TryGetAllPage
try to take over the world!
#分页遍历
#图片采集
#iframe管理
#批量下载
Gesamtinstallationen
8
Heute neu
+2
Benutzerbewertung
- / 5.0 (0)
Aktuelle Version
2026.6.17.1
Beschreibung
Versionen1
Bewertungen0
Berechtigungen
通用的网页分页遍历与图片批量下载工具,支持自动发现分页链接、提取页面图片并批量下载。
TryGetAllPage 油猴脚本使用说明
本脚本专为批量抓取多页网站中的图片资源而设计,通过自动遍历分页链接、提取页面内所有图片,并提供批量下载、预览、筛选等功能。无需手动翻页,一键收集全站图片。
🧩 主要特点
- 自动发现分页链接
- 脚本自动识别页面中文本为数字(如
1, 2, 3...)或包含**“上一页/下一页”** 的<a>标签,将其作为待遍历的目标页面。 - 支持递归爬取:在已加载的 iframe 页面中,会继续提取新的分页链接,从而实现全站遍历。
- 脚本自动识别页面中文本为数字(如
- 智能图片资源提取
不仅提取<img>标签的src和data-*属性,还会抓取:- 所有元素的 CSS 背景图片(
background-image) - 指向图片文件的 链接标签(
<a href="...jpg">)
自动过滤尺寸过小或宽高比异常的图片(如图标、占位图)。
- 所有元素的 CSS 背景图片(
- 高效的 iframe 管理
- 所有目标页面在侧边栏的 iframe 中加载,不影响当前主页面。
- 可并发加载最多 2 个页面(可调),避免浏览器卡顿。
- 支持暂停/继续遍历过程,随时控制进度。
- 图片预览与批量下载
- 提取的图片会以缩略图形式显示在侧边栏,方便预览。
- 支持批量下载(使用
GM_download),并可随时暂停/继续。 - 提供删除模式,可手动剔除不需要的图片后再下载。
- 站点级开关控制
- 通过 Tampermonkey 菜单,可对特定域名启用/禁用脚本,避免干扰其他网站。
- 启用状态会保存在浏览器中,下次访问自动生效。
🚀 使用方法
1. 启用脚本
- 访问目标网站(如包含分页的图库、商品列表等)。
- 点击浏览器右上角的 Tampermonkey 图标,在菜单中找到:
- “在当前网址和子网址运行” —— 点击后脚本即对该域名生效,页面自动刷新。
- 如需禁用,点击 “移除当前网址运行了”,刷新后脚本不再运行。
2. 主界面说明
脚本运行后,页面**右侧(或底部)**会出现一个半透明的 iframe 管理面板(IframeManager),包含以下控件:
| 按钮 | 功能 |
|---|---|
| GetPage | 开始遍历分页。点击后按钮变红,并显示进度(如 5/20)。再次点击可暂停遍历。 |
| Del | 切换至删除模式(按钮变红)。在此模式下点击缩略图会标记为删除(红框),再次点击取消标记。再次点击 Del 按钮退出删除模式。 |
| Download | 开始批量下载所有未被删除的缩略图。点击后按钮变红,并显示剩余数量;再次点击暂停下载。 |
| ShowImg | 将已提取到的图片链接以缩略图形式添加到面板中(分批次加载,每批 100 张)。按钮上显示剩余待添加数量。 |
| U | 滚动回面板顶部(方便查看)。 |
缩略图默认仅显示宽高比在 0.1~10 之间且尺寸大于 100px 的图片,避免加载无关小图。
3. 典型操作流程
- 打开目标网站(例如一个相册列表页)。
- 启用脚本(若未启用)。
- 点击 GetPage → 脚本自动抓取当前页面的分页链接,并开始在 iframe 中逐一加载每个页面。
- 每加载一个页面,会提取该页内的图片链接,同时发现新的分页链接(如有)并加入队列。
- 等待遍历完成(按钮恢复灰色),或随时点击暂停。
- 点击 ShowImg 将已收集的图片显示为缩略图(可多次点击分批展示)。
- (可选)点击 Del 进入删除模式,手动剔除不想要的图片。
- 点击 Download 开始下载,图片将保存到浏览器默认下载目录,文件名为
当前页面标题 + 序号.png。
4. 高级操作
- 暂停/恢复:所有主要操作(GetPage、Download)均支持再次点击按钮暂停,方便控制资源占用。
- 并发控制:脚本内部限制同时加载的 iframe 数量为 2,避免目标网站压力过大。
- 自动重试:若 iframe 加载缓慢,面板中的
retry按钮(绿色时)会自动触发重试,无需手动干预。
⚠️ 注意事项
- 适用网站类型
- 本脚本依赖于带有明确数字分页或“上一页/下一页”链接的网站。若网站采用无限滚动或 AJAX 加载,则无法自动识别分页。
- 图片提取基于静态 DOM,若图片是通过 JS 动态加载(如懒加载),需确保
data-src等属性存在,脚本已尝试提取包含data的属性值。
- 性能与流量
- 遍历大量页面时,会发起多次网络请求,请合理使用,避免对目标服务器造成负担。
- 同时打开的 iframe 数量有限(2个),但若页面包含大量图片,内存占用可能升高,建议分批次操作。
- 跨域与权限
GM_download需要 Tampermonkey 的@grant权限,已在脚本中声明。- 若目标网站有反爬机制(如验证码、IP 封锁),批量访问可能触发限制,请谨慎使用。
- 下载文件命名
- 文件名使用
document.title(当前页面标题)加序号,若标题包含特殊字符,可能影响保存,但通常浏览器会自动处理。
- 文件名使用
- 已启用站点的存储
- 脚本使用
GM_setValue存储启用列表,清除浏览器数据或卸载脚本会丢失该配置。
- 脚本使用
- 已知限制
- 脚本的
GetPage方法(在MyIM类中)实际被外部赋值,空方法定义仅为占位,不影响功能。 - 当 iframe 内页面与主页面不同源时,可能无法获取其 DOM 信息,此时图片提取可能失效(但链接提取不受限)。
- 脚本的
- 错误处理
- 若某个页面加载失败或超时,脚本会记录错误并继续处理下一个,不会中断整个过程。
- 下载失败时会在控制台输出错误信息,可自行检查网络或 URL 有效性。
📌 其他提示
- 脚本的
@include *表示匹配所有网址,但实际运行需要通过菜单启用,不会自动生效。 - 若想调整并发数量,可修改
MyIM构造函数中的this.maxPage = 2变量(需自行编辑脚本)。 - 建议在 Chrome/Edge + Tampermonkey 或 Firefox + Greasemonkey 等支持 GM_* API 的环境中使用。
享受一键收集全站图片的便利吧! 如有问题,可查看浏览器控制台(F12)的错误日志,辅助定位问题。