我怎样才能使用 OSX 从网站抓取/挖掘/哄骗/提取数据(最好)?

我怎样才能使用 OSX 从网站抓取/挖掘/哄骗/提取数据(最好)?

我正在尝试从网站“获取”数据。

有没有办法只需将程序指向 URL,它就会抓取该域中的所有内容。我应该如何在 OSX 10.5 上执行此操作?如果真的需要,我可以使用 ubuntu 或 windows 框作为最后的手段。

答案1

您可以使用wget以下命令可供 Mac OS X 下载包含在大多数 Linux 发行版中,可下载网站的全部内容,包括图像、CSS、JavaScript、视频、Flash 文件等。

一旦你有了它,打开一个终端。你可能想这样调用它:

wget -r -l0 -k http://www.example.com/

这将下载一切http://www.example.com/通过链接访问。该-r选项打开递归下载,因此它下载的不仅仅是主页。该-l选项设置它将从多少页面深度查找链接并下载,设置为0(就像我所做的那样)将设置为尽可能深入。请注意,如果网站使用动态页面生成,则可能会下载大量内容,因为可能有许多 URL 指向相同或非常相似的内容。该-k命令是可选的,它将wget转换所有链接、图像标签等。到本地计算机上的正确位置,以便您可以使用计算机上的 Web 浏览器查看它,并且它将正常工作。

请注意,它只会从www.example.com,而不是任何其他域。如果您需要它转到其他域,请使用开关-H将其打开,然后使用选项-D开关定义要从中下载的其他域(例如-D comments.example.com,beta.example.com)。请注意,如果您关闭开关-D并设置-l0/infinite,您很可能会尝试下载整个万维网!

另一个可能有用的开关是-N开关,它会将本地文件上的时间戳设置为服务器上的 HTTP 标头提供的时间Last-Modified,并且在后续下载中不会下载未更改的文件。

如需了解更多信息,请咨询文档wget

相关内容