Как я могу получить снимок или эскиз веб-страницы с помощью PHP?

Мне нужно создать снимки / превью / предварительный просмотр сайта a-site.com.

Есть такой сайт, как thumbshot.org, который мне нужен. Но я не хочу использовать внешний сервис, чтобы не зависеть от других в моем проекте (что будет, если они закроют сайт?)

По этой причине я ищу какой-нибудь проект, который позволил бы мне это сделать.

Любая идея?


person Community    schedule 14.01.2009    source источник


Ответы (5)


В Windows вы можете использовать функцию GD imagegrabwindow().

Изменить: на странице справки показано, как сделать снимок экрана из IE.

person Greg    schedule 14.01.2009
comment
Спасибо. По крайней мере, теперь я знаю, куда идти. Я не знал этой функции. Попробую сделать скрипт, который генерирует снап и автоматически проходит tftp - person ; 14.01.2009

В библиотеке PHP нет ничего для этого - вы собираетесь настроить внешнее приложение (с очередью) для получения изображений, хотя вы, конечно, можете использовать PHP для добавления элементов в очередь.

В GD есть несколько функций Windows, которые делают снимки экрана компьютера (веб-сервера, а не клиента), поэтому, возможно, вы могли бы написать сценарий на PHP для этого.

Изменить: думал об этом: _1 _ и imagegrabwindow. Однако я не уверен, что они будут делать то, что вы хотите (даже в полноэкранном режиме Firefox имеет синюю панель в верхней части экрана - не уверен в других браузерах). Однако у Пьера кое-что есть об этих функциях. если тебе интересно.

Я бы посоветовал написать приложение на другом языке (я полагаю, что в .NET что-то есть), чтобы сделать это за вас. Изменить: Эта страница расскажет, как это сделать на C #.

person Ross    schedule 14.01.2009

В этой ситуации PHP мало что может сделать для вас. Вам понадобится полный (X) механизм рендеринга HTML с поддержкой CSS, возможно, также с поддержкой JavaScript.

Это или использовать какой-то извращенный скрипт, который запустит настоящий браузер и сделает из него снимок экрана. В любом случае PHP, вероятно, не лучший инструмент для операционной части.

person Henrik Paul    schedule 14.01.2009

Существует расширение Firefox, которое преобразует просматриваемую веб-страницу в изображение:

http://www.screengrab.org/

http://addons.mozilla.org/en-US/firefox/addon/1146

Если вы готовы проявить творческий подход, возможно, получить доступ к этому будет проблематично.

person TravisO    schedule 14.01.2009

Спасибо всем. Я нашел псевдорешение (используя dcom + imagegrabscreen + wamp). Мне нужно изменить размер final.png с помощью gd, потому что png равно разрешению клиента (в моем доме это изображение 1650 * 1280). Когда я закончу это, я отправлю файл .zip для загрузки. Еще раз спасибо (но если у кого-то есть идея получше, я рад это видеть)

PS: извините за мой английский

person Community    schedule 15.01.2009