不要以为我疯了,我明白php是如何工作的!
话虽如此。我开发个人网站,我通常利用PHP来避免在开发阶段重复没有真正动态,只包括菜单,几个foreach和喜欢。
当开发阶段结束时,我需要将网站的html文件提供给客户端。是否有一个工具(爬虫?)可以为我做这个而不是访问每个页面并保存解释的HTML?
答案 0 :(得分:6)
您可以使用wget以递归方式下载链接的所有页面。
您可以在此处详细了解:http://en.wikipedia.org/wiki/Wget#Recursive_download
答案 1 :(得分:3)
如果你需要一些更强大的递归wget,httrack的效果非常好。 http://www.httrack.com/
答案 2 :(得分:1)
如果您想使用抓取工具,我会选择强大的wget。
否则你也可以使用像make这样的构建工具。
您需要在php文件的同一文件夹中创建一个名为Makefile的文件 它应该包含这个:
all: 1st_page.html 2nd_page.html 3rd_page.html
1st_page.html: 1st_page.php
php command
2nd_page.html: 2nd_page.php
php command
3rd_page.html: 3rd_page.php
php command
请注意, php命令不以空格开头,而是以制表方式开头。 (有关php命令行语法,请参阅this page。)
之后,只要您想更新html文件,只需输入
即可make
在您的终端中自动生成它们。
对于一项简单的工作来说,这看起来似乎很多,但 make 是一个非常方便的工具,您会发现它也可以自动执行其他任务。
答案 3 :(得分:1)
Pavuk提供比wget更精细的控制。如果需要,将重写抓取页面中的URL。
答案 4 :(得分:0)
也许,command line会有所帮助吗?
答案 5 :(得分:0)
如果您使用的是Windows,则可以使用Free Download Manager抓取网站。