1

我想将动态生成的网页的内容保存在文本文件中,以便在 Linux 下通过 bash 脚本进行进一步处理。我对源代码不感兴趣;我想要的只是将该页面的输出保存在本地(对应于Firefox中的Strg + S)。我尝试了 wget、curl... 和所有这些东西——但这只保存了页面的静态部分。有没有一种简单的方法可以使用 firefox 或任何其他浏览器从命令行将其保存在文件中?

4

1 回答 1

3

如果你想下载整个网站(比如说,www.google.com),你可以使用wget

wget --recursive --no-clobber --page-requisites --html-extension --convert-links --restrict-file-names=unix --domains google.com --no-parent www.google.com

根据这个网站,你可以使用这些参数:

  • --recursive : 下载完整的网站
  • --domains google.com:不要关注(因此下载)google.com 外部的链接
  • --no-parent:不要关注您调用的文件夹外的链接(这意味着,如果您想下载www.google.com/firefox,您不会关注该firefox文件夹外的链接)。
  • --page-requisites:获取页面中的所有元素(CSS、图像、脚本等)。
  • --html-extension : 保存带有.html扩展名的文件。
  • --convert-links:将类型的链接转换http://site.domain/folder/doc.htmlfolder/doc.html,以便它们在本地工作。
  • --restrict-file-names=unix:修改文件名(如果它们很奇怪)以与 UNIX 文件名约定完全兼容(这可能=windows适用于 MS Windows 文件系统,但我假设您使用的是与 UNIX 兼容的操作系统)。
  • --no-clobber:不覆盖现有文件(仅下载缺少的文件)。

当然,如果您想下载其他网站,则需要--domains相应地更改属性。此外,wget它并不总是捆绑在所有与 UNIX 兼容的操作系统(例如 Mac OS X)中,但总有一些方法可以安装它(常见的 GNU/Linux 发行版,如 Ubuntu、Debian 等,默认包含它)。

希望这可以帮助。

于 2013-08-21T23:19:59.987 回答