1

我正在尝试抓取网页。

我想通过提供其 URL 来下载网页并将其保存以供离线阅读其所有图像。我无法用 wget 做到这一点,因为它创建了许多目录。

wget可以做到这一点吗?是否有类似 FireFox 中的“另存为”选项的东西,它创建一个目录并将所有必需的资源放入 HTML 页面中?

是否有可能做到这一点 Nokogiri 或机械化?

4

2 回答 2

2

您可以使用wget它来执行此操作并从您的 ruby​​ 脚本中运行它。

这是一个示例,它将撕掉我网站的主页,skrimp.ly,并将内容放入名为“download”的单个目录中。一切都将在顶层,嵌入在 HTML 中的链接将被重写为本地:

wget -E -H -k -K -p -nH -nd -Pdownload -e robots=off http://skrimp.ly

注意:您应该查看 wget 的一些文档。它可以做一些非常疯狂的事情,比如下降多个级别。如果你这样做,请小心——它在网络服务器上可能非常繁重,并且在某些情况下会花费网站管理员很多 $$$$$。

http://www.gnu.org/software/wget/manual/html_node/Advanced-Usage.html#Advanced-Usage

于 2013-05-09T22:55:14.030 回答
2

铁皮人给出的答案起到了作用。 展示了如何使用 Nokogiri 下载带有图片的单个页面以供离线阅读,具有非常干净的目录结构。

于 2013-05-10T06:58:13.017 回答