完整保存网页(包括图片、css等),更像网络档案


Save webpage fully (with images, css, etc), better like web archive

我想用PHP制作一个网页的本地副本。这可以是一个网络档案,比如mht,也可以只是一个带有图像和css的html。结果应该与您在浏览器中按下"另存为"按钮几乎相同:)

我找到了这样的图书馆来做这件事:http://freecode.com/projects/php-save-complete-html-page最后,它创建了一个大的html文件,但工作速度非常慢,并且创建了非常大的文件。

我在网上找到了这样的解决方案,但它也不起作用:

wget --no-parent --timestamping --convert-links --page-requisites --no-directories --no-host-directories -erobots=off http://cnn.com

它不创建任何图像,不下载css,只下载html仅

我想找到一些PHP库,可以帮助我完全复制网页,或者找到一些外部工具,我可以做API cal并获得MHT存档,例如

我认为要编写自己的URL,可以使用curl并搜索外部URL,然后递归地遵循这些URL。外面可能有一个图书馆。

否则,您可以在php中使用exec()来运行命令行程序。HTTrack在创建网站方面做得很好:http://www.httrack.com/html/fcguide.html

例如:

exec('httrack "http://www.all.net/" -O "/tmp/www.all.net" "+*.all.net/*" -v');

此外,如果你想使用wget,我发现了一组应该有效的选项(据说我还没有尝试过):

wget '
     --recursive '
     --no-clobber '
     --page-requisites '
     --html-extension '
     --convert-links '
     --restrict-file-names=windows '
     --domains example.com '
     --no-parent '
         www.example.com/directoryToArchive