网页右键被禁用时,另存为菜单通常仍可用——这是最直接、成功率最高的保存HTML源码方式;若失效,则用Ctrl+U查看源码后手动保存为UTF-8编码的.html文件,或通过F12开发者工具Elements面板复制outerHTML保存。

网页右键被禁用时,另存为菜单通常仍可用——这是最直接、成功率最高的保存HTML源码方式。如果该选项也失效,说明网站用了更激进的屏蔽手段(如<noscript><iframe src="*.htm"></noscript>),此时需绕过浏览器UI,从底层获取HTML结构。
用 Ctrl+U + 手动保存是最稳的 fallback 方案
即使右键和菜单栏被锁死,Ctrl+U(查看页面源代码)在绝大多数浏览器中仍有效,因为它是浏览器原生快捷键,不依赖页面JavaScript控制。
- 按
Ctrl+U后会打开新标签页显示纯文本HTML源码 - 全选内容(
Ctrl+A),复制(Ctrl+C) - 打开记事本或 VS Code 等纯文本编辑器,粘贴(
Ctrl+V) - 保存为
xxx.html文件,编码选UTF-8(避免中文乱码)
注意:部分网站会用<frameset>包裹内容,Ctrl+U看到的只是框架代码而非真实页面。此时需先在地址栏输入 javascript:document.documentElement.outerHTML 并回车,再复制弹出的完整HTML字符串。
用开发者工具 Elements 面板提取原始 HTML
当Ctrl+U返回空或框架页时,F12开发者工具里的Elements面板能暴露渲染后的实际DOM,比源码更可靠。
立即学习“前端免费学习笔记(深入)”;
- 按
F12→ 切换到Elements标签页 - 右键点击最外层
<html>节点 → 选择Copy→Copy outerHTML - 粘贴到文本编辑器,保存为
.html文件即可
这个方法能绕过<noscript>干扰和<frameset>伪装,但无法还原服务器端注释或未执行的模板语法(如 Vue/React 的未编译模板)。
禁用 JavaScript 后刷新再另存为
很多“禁用右键+禁用另存为”的组合逻辑依赖 JavaScript 运行时注入,关掉 JS 就等于卸掉锁。
- 按
F12→ 打开设置(Chrome/Edge 是右上角三点 →Settings→Preferences→ 勾选Disable JavaScript) -
Ctrl+R刷新页面,此时右键菜单、另存为、查看源代码全部恢复 - 右键 →
另存为→ 类型选网页,仅HTML(不是“网页,全部”,后者会多存一堆资源文件夹)
风险点:某些页面依赖 JS 渲染主体内容(如 SPA 应用),禁用后可能只剩骨架 HTML。此时应优先用上一节的 Copy outerHTML 方式。
命令行或 DevTools Console 强制导出
当图形界面完全失灵(比如连 F12 都打不开),可尝试在地址栏或 Console 中执行原生 DOM 导出指令。
- 在地址栏输入:
javascript:location.href='data:text/html;charset=utf-8,'+encodeURIComponent(document.documentElement.outerHTML),回车后会跳转到一个 data URL 页面,再用Ctrl+S保存 - 或在 Console 中运行:
copy(document.documentElement.outerHTML),然后粘贴到编辑器保存
这个操作不触发任何事件监听器,也不依赖页面是否加载完成,但对 CSP 严格限制的站点可能报错 Refused to evaluate a string as JavaScript —— 此时只能回到 Ctrl+U 或换浏览器(Firefox 对此类限制更宽松)。
真正难搞的是那些用 Content-Security-Policy 头禁止内联脚本、又把关键 HTML 拆成多个 fetch 请求的站点。这时候没有一键解法,得结合 Network 面板抓取主 HTML 请求响应体,手动拼接。别指望“一键破解”,核心永远是:先确认限制在哪一层(JS / HTML 属性 / HTTP 头),再选对应层级的绕过方式。



















