如何从网站上抓取所有内容?

时间:2011-04-25 14:55:07

标签: php html windows web-services

我开发网站,有时客户已经拥有网站,但需要对它们进行全面改版,但大多数内容和图片需要保持不变。我正在寻找软件,即使它是成本或是一个桌面应用程序,将轻松允许我输入URL并将所有内容刮到我本地计算机上的指定文件夹。任何帮助将不胜感激。

8 个答案:

答案 0 :(得分:7)

htttrack对你来说会很好。它是一个离线浏览器,可以下载网站。您可以根据需要进行配置。这显然不会降低PHP,因为php是服务器端代码。您唯一可以下载的是html和javascript以及任何推送到浏览器的图片。

答案 1 :(得分:4)

file_put_contents('/some/directory/scrape_content.html', file_get_contents('http://google.com'));

为慈善事业省钱。

答案 2 :(得分:2)

根据内容,您的意思是整个页面内容,因为您可以“保存为...”整个页面包含大多数包含的媒体。

Firefox,在工具中 - >页面信息 - >媒体,包括您可以下载的页面上的每个媒体列表。

答案 3 :(得分:1)

不要因为这样的事情而烦扰PHP。您可以使用wget轻松获取整个网站。但是,请注意它不会为您解析CSS之类的内容,因此它不会抓取通过(例如)background-image: URL('/images/pic.jpg')引用的任何文件,但会为您捕获大部分内容。

答案 4 :(得分:1)

此课程可以帮助您抓取内容:http://simplehtmldom.sourceforge.net/

答案 5 :(得分:0)

你可以通过保存浏览器的选项来实现这一目标转到文件 - >保存页面,就像在firefox中一样,所有的图像和js都会保存在一个文件夹中

答案 6 :(得分:0)

几年前我开始使用HTTrack,我很满意。它似乎一直在寻找我自己甚至看不到的页面。

答案 7 :(得分:0)

您可以使用http://scrapy.org抓取网站并获取所需内容。

Scrapy是一种快速的高级屏幕抓取和网络抓取框架,用于抓取网站并从其网页中提取结构化数据。它可用于各种用途,从数据挖掘到监控和自动化测试。