有没有办法定期(例如每天)自动保存网页?我想要的是类似https://archive.org/但在本地(并且仅适用于某些站点)。
答案1
有没有办法定期(例如每天)自动保存网页?
是的。
一种基本方法是使用跨平台脚本语言(例如Python或者甚至电源外壳) 实现自动化。工具包括获得,卷曲,HT轨道或者甚至是 Chrome 或 Firefox 等浏览器(假设页面使用 Javascript 来呈现其自身部分)也是另一种选择,可能与脚本结合使用(见上文)。然后,您可以将系统设置为定期保存数据(即运行程序或脚本)(例如,cron
对于 *Nix 或对于 Windows 的任务计划程序)。
我想要的是类似 https://archive.org/ 的东西,但是是本地的(并且仅适用于某些网站)。
您可能需要自己构建它(假设您的意思是复制实际的网页功能)。
笔记
浏览器自动化
- Chrome 和 Firefox 的现代版本可以在没有图形用户界面的情况下运行,俗称“无头”模式。
- 若要在“无头”模式下自动化 Chrome 或 Firefox,你可能需要查看硒。
- 如果你要自动化“Chrome”,我建议你看看Woolyss 未在 Google 上发布 Chromium 版本。
JavaScript
- 如果 A) 使用命令行工具或 B) 给定浏览器以“无头”模式运行,则某些 JavaScript 页面部分可能无法正确呈现(即根本无法呈现)。因此,对于某些页面来说,这可能不是一个可行的选择(您必须有一个可见的浏览器/GUI)。
- 在极少数情况下,您可能需要使用类似以下方式自动执行浏览器 GUI 的“另存为”功能自动热键获取所有 JavaScript 渲染的数据。
- 在某些情况下,您可能必须编写脚本浏览器交互(例如页面滚动)来加载 JavaScript 渲染的数据。
有适度更新的 Windows 版本wget
可用这里。