如何将html页面保存为一个文件?

Dim*_*zov 17 html save archive webarchive

我希望能够将HTML页面保存/存档为一个文件(没有那些讨厌的外部文件夹).

我希望生成的文件包含所有样式,图像和链接(视频和Flash也很好,但不是很重要).

我希望生成的文件可以搜索和编辑.

微软的MHT就是这样的工具之一,但不幸的是,它在Linux下无法搜索.MHT很好,但我不想被一个操作系统或一个公司锁定.什么是一个好的选择 - 或者可能有一些我没有想到的完全不同的解决方案?

提前感谢您的建议!

小智 12

通过在chrome:// flags页面上切换"将页面另存为MHTML"选项,可以在当前版本的Google Chrome中查看和创建MHTML文件.

在你的网址框中输入chrome:// flags

但是,启用此实验选项会禁用将页面保存为仅HTML或HTML完整文件.来自chrome:// flags页面:

  • [消失](https://support.google.com/chrome/thread/7696455?hl=en)。 (2认同)

zTr*_*rix 11

SingleFile chrome扩展是一个很好的解决方案.

我也编写了自己的python工具来解决这个问题我建议尝试一下:https: //github.com/zTrix/webpage2html


afe*_*que 10

扩展 zTrix 的回答,我建议避免使用 Chrome 扩展程序(它根本不适合我),而是使用以下选项之一:

  • Node.js:remy 的内联
    • 易于安装使用 npm
    • 许多选项,包括用于禁用缩小/压缩、维护外部图像、跳过视频等的标志。
    • 警告:(2017 年 9 月 22 日)在编译Slate 构建时无法保持样式和 JavaScript 功能。这不会直接影响大多数人,但这意味着内联程序可能会对其他页面产生问题。看到这个问题
    • 警告:没有选项可以“不理会”:将缩小/丑化 CSS/JS 或美化,但不会简单地将原始源代码嵌入到 HTML 中。
  • Python 2:zTrix 的网页 2html
    • 比内联更保守;大多数情况下效果很好。
    • zTrix 修复了一个错误(该内联程序似乎也有),该错误在编译Slate 构建时确保 JavaScript/CSS 功能。看到这个问题(2017 年 9 月 29 日更新)
    • 可以相对轻松地转换为 Python 3
    • 警告:无法处理 CSS @import


小智 7

通常,可以创建一个包含所有常见子文件(css、jpg、js、svg 等)
的 HTML 文件您必须通过替换“ src”属性值、“ url()”函数并插入 HTML 标记来重写 HTML 文件像“ <script></script>”表示 JavaScript 文件,“ <style></style>”表示 CSS 文件,“ <svg></svg>”表示 SVG 图像。

例如,由“ url()”函数调用的 CSS 中的 GIF 图像文件。

  1. 从他的 URL 下载图像。
  2. 将此图像编码为 Base64。
  3. 用Base64 编码的 GIF 图像替换“ url('https://en.wikipedia.org/wiki/File:TPB_Magnet_Icon.gif')” 为“ url('data:image/gif;base64,R0lGODlhDAAMALMPAOXl5ewvErW1tebm5oocDkVFRePj47a2ts0WAOTk5MwVAIkcDesuEs0VAEZGRv///yH5BAEAAA8ALAAAAAAMAAwAAARB8MnnqpuzroZYzQvSNMroUeFIjornbK1mVkRzUgQSyPfbFi/dBRdzCAyJoTFhcBQOiYHyAABUDsiCxAFNWj6UbwQAOw')”,前缀为“ data:image/gif;base64,

您可以对 " src" 属性的值执行相同的操作。此解决方案可用于其他二进制文件。您必须data根据编码对象调整正确的“ ”前缀。