You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Chrome自动删除MHT网页归档文件问题求助(附Shell脚本)

解决Chrome自动删除下载文件(含脚本归档场景)的问题

可能的原因与对应解决方法

1. 检查Chrome自动清理下载内容的设置

Chrome自带自动清理下载文件的隐藏功能,按以下步骤确认:

  • 在Chrome地址栏输入 chrome://settings/downloads
  • 找到下载内容板块下的自动清除已下载的文件选项,确保处于关闭状态
  • 调整后重启Chrome再测试操作

2. 调整macOS文件访问权限

macOS的隐私权限可能限制Chrome在指定目录留存文件:

  • 打开「系统设置」→「隐私与安全性」→「文件与文件夹」
  • 找到Google Chrome,勾选桌面(对应脚本里的保存目录)的访问权限
  • 重启Chrome后重新运行脚本

3. 修正脚本中的文件名规则

脚本里的文件名包含逗号,可能触发Chrome的安全检测,修改文件名生成逻辑:

# 原文件名代码
# FILE_NAME="$PAGE_TITLE,$DATE.mht"
# 修改为(替换所有特殊字符为下划线)
PAGE_TITLE=${PAGE_TITLE//[,:\/ ]/_}
FILE_NAME="${PAGE_TITLE}_${DATE}.mht"

4. 解除Chrome下载限制策略

针对脚本这类非手动触发的下载,调整Chrome的下载限制:

  • 在Chrome地址栏输入 chrome://flags/#download-restrictions
  • 将选项设置为 No restrictions(无限制)
  • 重启Chrome后执行脚本

优化后的完整脚本

结合上述修改,调整后的脚本兼容性更强:

#!/bin/bash

# 设置目标网址
URL="https://thescottsdaleherald.com/"

# 保存目录
SAVE_DIR="$HOME/Desktop/"

# 获取时间戳(小时-日-月-年)
DATE=$(date +'%H-%d-%m-%Y')

# 打开Chrome并访问网址
open -a "Google Chrome" "$URL"

# 等待页面加载(可根据网速调整时长)
sleep 8

# 获取页面标题并清理特殊字符
PAGE_TITLE=$(osascript -e 'tell application "Google Chrome" to return title of active tab of window 1')
# 替换逗号、冒号、斜杠、空格为下划线
PAGE_TITLE=${PAGE_TITLE//[,:\/ ]/_}

# 生成安全的文件名
FILE_NAME="${PAGE_TITLE}_${DATE}.mht"
FULL_PATH="$SAVE_DIR/$FILE_NAME"

# 保存页面为MHT归档
osascript -e 'tell application "Google Chrome" to save active tab of window 1 in file "'"$FULL_PATH"'" '

# 可选:自动关闭标签页,避免累积
osascript -e 'tell application "Google Chrome" to close active tab of window 1'

内容的提问来源于stack exchange,提问作者Peter Farago

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.28 21:13:23