Как создать снимок экрана веб-сайта с помощью PHP и библиотеки GD.
Как сделать снимок экрана веб-сайта с помощью PHP и GD?
comment
Открытый вызов? Это не сайт для написания кода.
- person Ross   schedule 09.03.2009
comment
Вы можете использовать thumbshots.org
- person vartec   schedule 09.03.2009
Ответы (2)
Хотя вы могли бы что-то сделать с помощью imagegrabscreen
или _ 2_ вы сможете использовать его только в Windows, и даже тогда это будет сложно.
Вам нужно будет открыть окно браузера по указанному URL-адресу (вы можете сделать это с помощью exec
) и сделать снимок экрана, используя вышеупомянутые методы.
Вот пример ручной записи для imagegrabwindow
:
<?php
$browser = new COM("InternetExplorer.Application");
$handle = $browser->HWND;
$browser->Visible = true;
$browser->Navigate("http://www.libgd.org");
/* Still working? */
while ($browser->Busy) {
com_message_pump(4000);
}
$im = imagegrabwindow($handle, 0);
$browser->Quit();
imagepng($im, "iesnap.png");
imagedestroy($im);
?>
person
Ross
schedule
09.03.2009
Привет, Росс, приведенный выше код дает следующую ошибку / предупреждение Предупреждение PHP: модуль 'gd' уже загружен в Неизвестно в строке 0 Неустранимая ошибка PHP: неперехваченное исключение 'com_exception' с сообщением 'Не удалось создать COM-объект `InternetExplorer.Application': Доступ есть отклонен. '
- person ; 10.03.2009
У меня даже не получается заставить работать imagegrabscreen. Как я уже сказал, я скопировал только этот код из руководства. Все, что я могу предложить, это следовать примечанию на php.net/imagegrabscreen (при условии, что вы используете Apache) .
- person Ross; 10.03.2009
(Обратите внимание, что в Vista, включающая поддержку рабочего стола Apache, перезапуск службы и сервера по-прежнему не работает)
- person Ross; 10.03.2009
Веб-сайт отображается на стороне клиента, а PHP и GD - на стороне сервера. Вы также можете проверить этот веб-сайт. Надеюсь, поможет.
person
Stiropor
schedule
09.03.2009
Спасибо за ссылку, работает, ожидаю, что HTML5 / canvas не реализован. Это решение работает лучше.
- person Ruut; 13.04.2014