2011-03-28 1 views

ответ

7

Существуют различные утилиты командной строки доступны. Сначала начните один из browser engines in headless X11 и сделайте снимок экрана. Особый распространенный является khtml2png, которые могут быть использовано с PHP, как это (не уверен, если есть предкомпилированная версия для CentOS):

exec("khtml2png --width 800 --height 600 http://google.com/ img.png"); 

Несколько более перечислены здесь: Command line program to create website screenshots (on Linux)

+0

Я не могу запустить эту команду через php. Он должен проходить через терминал. Я хочу автоматизировать создание миниатюр через PHP. exec включен на php, но именно эта конкретная команда. У меня есть выделенный сервер, поэтому я могу устанавливать приложения, поэтому вы можете предложить их мне. Но приложение должно иметь возможность запускать PHP. – Vish

+0

У вас появляется специальное сообщение об ошибке? (Используйте '2>/dev/stdout' для его захвата). Если вы не можете запустить эту команду из exec(), то другие параметры (firefox & captureing X11 root window) не будут работать намного лучше. - Другим обычно рекомендуемым вариантом будет 'wkhtml2pdf' http://code.google.com/p/wkhtmltopdf/ (который затем, однако, требует второго шага, чтобы снова преобразовать его в изображение PNG ..) – mario

+0

, если вы не возражаете не могли бы вы дать мне шаги для установки wkhtml2pdf и его php-аналога. спасибо ... :) – Vish

0

Я не думаю, что это возможно, потому что PHP не делает веб-сайты, как браузер делает.

EDIT: Однако вы можете сохранить необработанный HTML-код страницы без использования скрипта PHP cURL.

например:

$websites[] = 'http://google.com'; 
$websites[] = 'http://stackoverflow.com'; 
$websites[] = 'http://msn.com'; 
$websites[] = 'http://microsoft.com'; 

foreach ($websites as $site) 
{ 
    $curl = curl_init(); 
    curl_setopt($curl, CURLOPT_URL, $site); 
    curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); 
    $data = curl_exec($curl); 
    curl_close($curl); 

    if(!empty($data)) 
    { 
     savePageToFile($data); //placeholder, not real function 
    } 
} 
+1

Хотя эта информация точна , это не имеет большого отношения к съемке снимка сделанной веб-страницы. – Klinky

Смежные вопросы