automator 通过串联浏览器、插件与系统操作实现网页批量下载自动化,核心是构建“生成链接→唤起浏览器→衔接下载”三步流水线,而非直接抓取网页。

Automator 本身不直接抓取网页内容,但能高效串联浏览器、插件与系统操作,把“打开页面→触发下载→整理文件”整条链路自动化起来。关键不在它多强大,而在于它怎么把已有工具串成一条流水线。
明确任务链条,再选 Automator 类型
批量网页下载不是单一动作,而是分阶段的协同过程。你需要先判断主控环节在哪:
- 如果下载靠 Chrome 插件(如 Bulk Media Downloader)完成,Automator 主要负责循环生成 URL、唤起浏览器、等待插件响应——适合用工作流(Workflow)类型,便于调试和手动触发
- 如果目标是固定路径下的网页资源(比如每天下载某站点的 PDF 列表页),且希望无人值守,就选文件夹操作(Folder Action)监听 ~/Downloads,自动重命名或移入归档文件夹
- 如果想一键启动整套流程(如输入起止编号 → 自动生成 200 个链接 → 全部打开 → 等待下载完成 → 清理临时标签页),推荐打包为应用程序(Application),双击即运行
核心三步:生成链接、调用浏览器、衔接下载
以“下载 gushi-1.html 到 gushi-200.html”为例:
-
用变量 + 循环控制编号:在 Automator 中新建变量(如叫 counter),初始值设为 1;拖入“Loop”操作,每次循环执行后用“设定变量”把 counter 加 1;在循环内用“运行 AppleScript”拼接 URL:
"http://xbd.wangluoyuming.com/gushi-" & counter & ".html" -
用 AppleScript 唤起 Chrome 并跳转:在“运行 AppleScript”中写:
tell application "Google Chrome"
make new tab at end of tabs of window 1 with properties {URL:theURL}
end tell
注意提前确保 Chrome 已打开,否则需加启动逻辑 - 给插件留出响应时间:Bulk Media Downloader 需要几秒识别页面媒体。可在 AppleScript 后加“暂停”操作(如停 3 秒),避免还没加载完就切到下一个链接
善用插件与系统配合,避开 Automator 能力盲区
Automator 不会自动点击“Download”按钮,也不解析 HTML。它的优势是调度,不是替代:
- Bulk Media Downloader 这类插件已内置页面扫描与下载队列管理,Automator 只需负责“喂链接”和“等结果”
- 下载完成后,文件落在 ~/Downloads,这时可另建一个文件夹操作工作流,监听该目录,对新出现的 .mp3 或 .pdf 文件自动重命名、打上日期前缀、移入对应子文件夹
- 若需从网页提取真实资源地址(如抖音 mp4 链接),建议改用 Automa 这类浏览器原生 RPA 工具——它能在页面内执行 XPath 查询和 JS 下载,Automator 做不到这层
安全与验证不可跳过
这类任务容易因网络延迟、页面结构变化或插件未激活而中断,上线前务必验证:
- 先用小范围测试(如只循环 1–5),观察 Chrome 是否真打开了对应页面、插件是否列出目标文件
- 在 AppleScript 中加入错误捕获,例如检查 Chrome 是否运行:
if application "Google Chrome" is running then ... else display alert "Chrome 未启动" - 避免覆盖同名文件:下载前可在 Automator 中加一步“获取文件属性”,用“格式化为名称”插入时间戳或序号,确保每个文件名唯一











