-2

我想使用 PHP 制作网页的本地副本。这可以是一个 web 存档,如 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 存档,例如

4

1 回答 1

0

我想写你自己的,你可以使用 curl 并搜索外部 url,然后递归地遵循这些。那里可能有一个图书馆。

否则,您可以exec()在 php 中使用来运行命令行程序。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
于 2014-10-13T23:30:07.737 回答