Automator 可通过组合浏览器、插件与脚本实现网页音频等资源的定期自动下载:先循环生成URL并用Chrome打开,借助Bulk Media Downloader捕获下载;再用文件夹操作监听Downloads、自动归档重命名;最后通过日历事件定时触发,并加入延迟、目录检查、重复规避及失败通知提升稳定性。

Automator 本身不直接抓取网页内容,但可以和浏览器、插件、脚本配合,实现对特定网站内容(如音频、图片、文档)的定期自动下载。关键在于把“生成 URL → 打开网页 → 提取资源 → 下载”这一链条拆解并自动化。
用 Bulk Media Downloader + Automator 循环生成地址
适合结构清晰的系列页面,比如 https://example.com/ep-1.mp3 到 https://example.com/ep-200.mp3:
- 在 Automator 中新建「工作流」,拖入「设定变量」动作,起名 counter,初始值设为 1
- 拖入「循环」动作,勾选「重复直到」,条件设为 counter ≤ 200
- 在循环内加入「运行 AppleScript」,拼接 URL 并用 Safari 或 Chrome 打开:
tell application "Chrome" to open location "https://example.com/ep-" & (counter as text) & ".mp3" - 确保已安装 Bulk Media Downloader 插件,它会自动捕获页面中的媒体链接
- 循环末尾加一个「设定变量」动作,把 counter 值加 1
用文件夹操作监听下载完成并归档
下载完成后,让 Automator 自动整理文件,避免手动挪动:
- 新建「文件夹操作」工作流,指定监控 ~/Downloads
- 添加「过滤 Finder 项目」,设置条件如「文件名包含 .mp3」且「修改日期在过去 5 分钟内」
- 接「移动 Finder 项目」,目标设为 ~/Music/Podcasts/MyShow
- 再加「重命名 Finder 项目」,选择「添加后缀」,填入 _auto,避免重名覆盖
- 右键 Downloads 文件夹 →「配置文件夹操作」→ 启用该工作流
用日历提醒触发定时执行
让整个下载流程每天固定时间跑一次,无需手动点开 Automator:
- 把上面做好的工作流保存为「工作流」格式(不是应用或快速操作)
- 把它存到这个路径:~/Library/Workflows/Applications/Calendar/
- 打开「日历」App,新建一个重复事件(例如每天上午 9:00)
- 在事件提醒里选「运行工作流」→ 找到你刚存的那个文件
- 系统会在设定时间自动运行整个流程,包括打开网页、触发下载、归档文件
补充建议:增强稳定性和容错
实际运行中常遇到页面加载慢、插件未就绪、网络中断等问题,可加几处优化:
- AppleScript 中加入延迟:delay 3,等页面和插件加载完再继续
- 用「运行 Shell 脚本」检查目标目录是否存在,不存在则自动创建:mkdir -p ~/Music/Podcasts/MyShow
- 下载前先判断文件是否已存在,避免重复下载:if [ ! -f "$HOME/Music/Podcasts/MyShow/ep-${counter}.mp3" ]; then ...
- 失败时加「显示通知」动作,标题写「下载第 X 集失败」,方便及时排查

















