我正在尝试抓取网页。
我想通过提供其 URL 来下载网页并将其保存以供离线阅读其所有图像。我无法用 wget 做到这一点,因为它创建了许多目录。
wget可以做到这一点吗?是否有类似 FireFox 中的“另存为”选项的东西,它创建一个目录并将所有必需的资源放入 HTML 页面中?
是否有可能做到这一点 Nokogiri 或机械化?
您可以使用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
铁皮人给出的答案起到了作用。 这展示了如何使用 Nokogiri 下载带有图片的单个页面以供离线阅读,具有非常干净的目录结构。