Попробуйте сохранять вид сайта в картинку
через PhantomJS – по ссылке пример, как сохранить главную страницу github в файл png.
Нужно
скачать PhantomJS, создать js-файл с 5 строчками из примера, и запустить из командной строки примерно так:
phantomjs github.js
PhantomJS – это не JS-библиотека, это Webkit браузер, управляемый через JavaScript API. Как заметил
hOtRush Google также анонсировал «безголовую» версию своего браузерного движка Chromium, в связи с чем проект PhantomJS может потерять актуальность. Тем не менее, пока он вполне рабочий, и обновляется сообществом разработчиков (последний
коммит на сегодня – двухмесячной давности, от 25 июня 2017).
Вы можете установить PhantomJS на своем сервере и вызывать его через
exec() из php-скрипта, принимающего URL сайта, который надо перевести в картинку. Это самый простой вариант. Минус – в том, что PhantomJS жрёт много памяти, и если несколько посетителей запросят одновременно несколько заданий, памяти на всех может не хватить. В таком случае организуйте асинхронную очередь задач. Поступающие запросы с URL ставьте в очередь, которая последовательно обрабатывается всего одним процессом phantomjs. По мере готовности, заказчики смогут забрать готовые картинки сайтов.