5

Мне нужно сделать скриншот сайта автоматически в указанное мной время. В идеале он не будет использовать мой компьютер, поскольку он не гарантированно будет включен в указанное время.

Есть ли какой-то веб-сервис, который делает это? Или какой-нибудь (бесплатный) хостинг-сайт, где я мог бы настроить скрипт для этого (на ум приходит PHP)? У меня есть iPhone с джейлбрейком, который также можно использовать (jailbreaked = у меня есть root-доступ и, возможно, я могу использовать магию cron ).

10 ответов10

2

Вы можете посмотреть на эту запись в блоге, описывающую, как сделать скриншот

Как видите, есть скрипт php, который делает снимок экрана:

<?php

// save this snippet as url_to_png.php
// usage: php url_to_png.php http://example.com
if (!isset($argv[1])){
    die("specify site: e.g. http://example.com\n");
}

$md5 = md5($argv[1]);
$command = "wkhtmltopdf $argv[1] $md5.pdf";
exec($command, $output, $ret);
if ($ret) {
    echo "error fetching screen dump\n";
    die;
}

$command = "convert $md5.pdf -append $md5.png";
exec($command, $output, $ret);
if ($ret){
    echo "Error converting\n";
    die;
}

echo "Conversion compleated: $argv[1] converted to $md5.png\n"; 

Однако вам нужно ImageMagick и wkhtmltopdf:

sudo aptitude install imagemagick wkhtmltopdf

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

2

Вы можете начать сеанс на http://browsershots.org . Я думаю, что если вы знаете, как делать cronjob, его можно запустить в любое время.

2

Вы можете использовать веб-захват. Простой скрипт с использованием webkit и Qt.

http://labs.trolltech.com/blogs/2009/01/15/capturing-web-pages/

1

Вы можете использовать Wimg.ca, вот пример.

1

Несколько месяцев назад мне пришлось сделать что-то подобное, и я нашел три небольших программы.

В Windows вы можете использовать инструмент с открытым исходным кодом под названием IEcapt

Использование из командной строки:

iecapt --url=http://www.google.com/ --out=localfile.png

В Linux вы можете использовать html2jpg или Webthumb.

Я использовал IEcapt и работал нормально для меня.

0

Определенно рекомендую использовать существующий сервис, а не кодировать новый. Я использую http://www.websnaps.co

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

0

iMacros для Firefox можно использовать для создания полных снимков экрана веб-браузера: http://wiki.imacros.net/Browser_Automation#Web_Site_Screenshot

Запустите его с помощью планировщика задач и командной строки: http://wiki.imacros.net/iMacros_for_Firefox#Command_Line_Support

0

Раньше я использовал GrabzIt для такой работы, они предоставляют простую в использовании библиотеку PHP. Чтобы использовать его, вам нужно сделать что-то вроде:

include("GrabzItClient.class.php");
$grabzIt = new GrabzItClient();
$id = $grabzIt->TakePicture("http://www.google.com");

//wait a certain amount of time and retrieve the screenshot

$result = $grabzIt->GetPicture($id); 

if (!$result){ return;}
file_put_contents("images/test.jpg", $result);
0

Вы можете попробовать Webcron + сервис скриншотов, например Browshot, с их библиотекой PHP. Вы также должны были бы / загрузить свой скриншот где-нибудь, например, S3.

0

В этой статье Создатели миниатюр веб-сайтов (Генераторы моментальных снимков веб-сайта) обсуждают несколько способов достижения этой цели. Например, это указывает на:

Бесплатные сценарии PHP :: Генератор миниатюр сайтов

Генератор большого пальца веб-сайта можно использовать для создания миниатюр веб-сайтов в соответствии с вашими потребностями или для запуска собственной службы создания миниатюр веб-сайтов.

Требования:

  • Windows хостинг
  • Библиотека PHP GD (установлена на большинстве хостингов)
  • Разрешения на выполнение сторонних приложений (т.е. исполняемых файлов)
  • Разрешения на выполнение Internet Explorer

Как это устроено:

  • Генератор миниатюр веб-сайтов проверяет, есть ли в кэше изображение веб-сайта, и показывает его в браузере.
  • Если кэшированное изображение отсутствует, то из сценария будет запускаться IECapt.
  • IECapt запустит Internet Explorer, получит полноразмерный скриншот сайта
    и сохраните изображение в
    папка, которую вы указали в скрипте
    Настройки.
  • Затем генератор миниатюр веб-сайта изменит размер изображения и покажет его в
    браузер.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .