Download 以单个html文件的形式下载网页的本地工作副本

Download 以单个html文件的形式下载网页的本地工作副本,download,wget,offline-browsing,Download,Wget,Offline Browsing,我遵循了本手册中提供的说明。我可以下载该网页的本地工作副本(例如,wget-p-k)https://shapeshed.com/unix-wget/)但我想将所有文件(js、css和图像,例如使用base64编码)集成到一个html文件(或其他方便的格式)中。这可能吗 这当然可以做到。但是您必须手动完成两件简单的事情,因为没有可用的工具来自动化某些步骤 使用Wget和所有依赖项下载网页 将链接样式表和脚本的内容复制到主HTML文件 包含在HTML和CSS中,然后将它们插入到主HTML文件中

我遵循了本手册中提供的说明。我可以下载该网页的本地工作副本(例如,
wget-p-k)https://shapeshed.com/unix-wget/
)但我想将所有文件(js、css和图像,例如使用base64编码)集成到一个html文件(或其他方便的格式)中。这可能吗

这当然可以做到。但是您必须手动完成两件简单的事情,因为没有可用的工具来自动化某些步骤

  • 使用Wget和所有依赖项下载网页
  • 将链接样式表和脚本的内容复制到主HTML文件
  • 包含在HTML和CSS中,然后将它们插入到主HTML文件中
  • 下面是一个编码为Base64数据URI的单页应用程序示例,创建该应用程序是为了演示该概念(将下面的代码复制并粘贴到web浏览器地址栏):

    试用

    这是非常有效和易于使用的网站复印机。你所要做的就是粘贴你想在本地复制的网站的链接

    按照以下步骤操作,因为您希望所有内容都在单个页面中

  • 缩小所有样式表并将它们放入主菜单中的
    HTML页面使用
  • 缩小所有脚本并将它们放入同一文件中的
    。使用
  • 要处理图像,请使用

  • 另一个解决方案是使用带有自定义扩展的web代理来存储源,cf

    这个GitHub项目是我用Go编写的一个简单的web代理。在
    Main.go
    第71行及其后将把原始站点中的任何数据复制到浏览器中

    在您的情况下,如果数据已存储或未存储,您将添加一个查询。如果是这样,请从磁盘加载并将其发送到浏览器。如果没有,则从源加载并存储到磁盘

    您使用单文件存储的条件不会成为问题:Go可以读取和写入,例如ZIP文件,cf。如果您需要立即转储这些网站,则需要一些代码来跟踪所有链接,以便立即存储任何内容

    因此,这个答案不是你问题的现成解决方案。相反,它需要编写一点代码。Go代码可以编译到任何平台(x86、ARM、PPC)和操作系统(Linux、macOS、Windows)


    希望,这个答案为您提供了一个选择。

    有一个Chrome扩展可以做到这一点

    谢谢您的回答,但是我正在寻找一种自动化的方法来实现这一点,即使它需要使用多个应用程序/命令。我再等一个。嘿,马特,我回答了你最初的询问。在您的问题中,您没有强调过您正在寻找一种自动执行此操作的方法。HTTrack作为Windows cmd.exe命令运行,但也有适用于Windows的GUI版本。非常方便。
    data:text/html;charset=utf-8;base64,PCFkb2N0eXBlIGh0bWw+DQo8aHRtbCBsYW5nPSJlbiI+DQoJPG1ldGEgY2hhcnNldD0idXRmLTgiPg0KCTx0aXRsZT5TaW5nbGUtcGFnZSBBcHBsaWNhdGlvbiBFeGFtcGxlPC90aXRsZT4NCgk8c3R5bGU+DQoJCS8qIENvZGUgZnJvbSBDU1MgZmlsZXMgZ29lcyBoZXJlLiAqLw0KCQlib2R5IHsNCgkJCWZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmOw0KCQl9DQoJCWJ1dHRvbiB7DQoJCQlkaXNwbGF5OiBibG9jaw0KCQl9DQoJPC9zdHlsZT4NCgk8c2NyaXB0Pg0KCQkvLyBDb2RlIGZyb20gLmpzIGZpbGVzIGdvZXMgaGVyZS4gDQoJCWZ1bmN0aW9uIGNoYW5nZVBhcmFncmFwaCgpIHsNCgkJICAgIGRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCJwIilbMF0uaW5uZXJIVE1MID0gIkNvbnRlbnQgb2YgcGFyYWdyYXBoIGNoYW5nZWQuIjsNCgkJfQ0KCTwvc2NyaXB0Pg0KCTxib2R5Pg0KCQk8aW1nIHNyYz0iZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFVQUFBQUR3QkFNQUFBQ0RBNkJZQUFBQU1GQk1WRVZVVmx1T2o1TC8vLzlrWm1xbXA2bUJnb1dhbTUyeHNyTnpkSGk4dkw3dDdlNzI5dmJHeDhqazVPVFEwZExhMnR2SHNtSDhBQUFDSjBsRVFWUjRBZXpCZ1FBQUFBQ0FvUDJwRjZrQ0FBQUFBQUFBQUFBQUFBQUFBQUFBWUExdElLU2twRERxUUdMQXFBTkhIY2dzSWd3a3d4SUJ6SllCaEJSaEdJYmZiWGZiMWUzcU5vRUU5NVN1bTJuM1Z1SndNSHNRa0FGUVpBVUF4bDA2UU9zRXVNaENDTWNRQVRFWEJhaURBOGdFSUpJQXNKYUFNdmsrVGdrQTVuL2cvN3p2NE9HYitZMmN4djdqVkVaMzRLZG5kNStrTlFudXd1b2NNbDJCOTVZZUZoRHZTVHFmRTAwdldhV3RBcUtrTnNHcndFWUw0S1BrSjNFcW5WanNndTBTWURTdVM5Qk1lQUN3WnFGenJBN0dyZ2x1NHl6cUVuUnlnSkdVdzlzU050ekt5YlNFelNXczF5VzR1WjhEcDY4QXRlR1dXaEJaTVp6TWdhd0J3M0d6SkI3WEpQaFoyN0N1aGd0VzFVSXFRVXY0WXFwa1BiZ21IVUJTazJDaUh0ejA3Y294T1JVdzlTbTdBQXVwRHkvcXVtYlVzY20xcEdkSHZ3RUVTRlpuNTNCZ0VZTGdJUTVOd0o4aHV4MlNZTHZBUVlFS1hvVG81YVQ4ZjhXZkJrWWFnT0FCTEh4U0RvbFVRcllDMytUVUwrZ3JWYk1BZlljM1Z2ZzFjeXoxcWlvTFEvQ0RuZ042QlBGcGVYWlJ6NXB6U0FJUVhBRytBcWlQVVVCbXhYQUprUUlRN0dEa1o5OXp2UFBQejhKYUNJSTZBYTc3ZEI5NDdlOWt0d1NJVjRNUWJPV01VcDkwci9veGRrRjFjb2oyRkFiZHdWaC9zUlZiZUhreVUyQThyYXBVV3NKVVliSUQ3MllQSVZhZzlNRzVvVUJwbGppSlFtVUw0NmZDNWM1UjlldFBlM0FnQUFBQWdBQm83UEZYR0tCcUFBQUFBQUFBQUFBQUFBQUFBQUFBQUxnTmtYVy9TUloxSldBQUFBQUFTVVZPUks1Q1lJST0iIGFsdD0iIj4NCgkJPGgxPlNpbmdsZS1wYWdlIEFwcGxpY2F0aW9uIEV4YW1wbGU8L2gxPg0KCQk8cD5UaGlzIGlzIGFuIGV4YW1wbGUgb2YgYSB3ZWIgYXBwIHRoYXQgaW50ZWdyYXRlcyBIVE1MLCBDU1MsIEphdmFTY3JpcHQsIGFuZCBhbiBpbWFnZSBpbnRvIG9uZSAuaHRtbCBmaWxlIHRoYXQgaXMgZW5jb2RlZCB0byBCYXNlNjQuPC9wPg0KCQk8YnV0dG9uIHR5cGU9ImJ1dHRvbiIgb25jbGljaz0iY2hhbmdlUGFyYWdyYXBoKCkiPkNoYW5nZSBQYXJhZ3JhcGg8L2J1dHRvbj4NCgk8L2JvZHk+DQo8L2h0bWw+