Сохранить веб-страницу полностью (с изображениями, CSS и т. Д.), Лучше как веб-архив
Я хотел бы сделать локальную копию веб-страниц с использованием PHP. Это может быть веб-архив, например, mht, или просто html с изображениями и css. Результат должен быть примерно таким же, как вы нажимаете кнопку "Сохранить как" в вашем браузере:)
Я нашел такую библиотеку для этого: 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 и получить архив MHT
1 ответ
Я думаю, чтобы написать свой собственный, вы можете использовать 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