Инструменты для захвата и конвертирования Интернета

Захватывать скриншоты сайта или конвертировать HTML в изображения

Perl API

Создавайте идеальные скриншоты изображений для веб-сайтов или конвертируйте HTML прямо в изображения, используя следующие функции: Perl API от GrabzIt, Однако, прежде чем начать, помните, что после вызова URLToImage, HTMLToImage or FileToImage методы Save or SaveTo метод должен быть вызван для создания изображения.

Основные параметры

Требуется только один параметр, чтобы сделать снимок экрана веб-страницы или конвертировать HTML intизображение как показано в следующем примере.

$grabzIt->URLToImage("https://www.tesla.com");
# Then call the Save or SaveTo method
$grabzIt->HTMLToImage("<html><body><h1>Hello World!</h1></body></html>");
# Then call the Save or SaveTo method
$grabzIt->FileToImage("example.html");
# Then call the Save or SaveTo method

Форматы изображений

Perl API GrabzIt может создавать изображения в нескольких форматах, включая JPG, PNG, WEBP, BMP (бит 8, бит 16, бит 24 или бит 32) и TIFF. Формат по умолчанию для снимков экрана - JPG. Однако качество изображения JPG может быть недостаточно хорошим для некоторых приложений в этих условиях. Формат PNG рекомендуется для снимков экрана, поскольку он обеспечивает хороший баланс между качеством и размером файла. В приведенном ниже примере показан снимок экрана, снятый в формате PNG.

$grabzIt = GrabzItClient->new("Sign in to view your Application Key", "Sign in to view your Application Secret");

$options = GrabzItImageOptions->new();
$options->format("png");

$grabzIt->URLToImage("https://www.tesla.com", $options);
# Then call the Save or SaveTo method
$grabzIt->SaveTo("result.png");
$grabzIt = GrabzItClient->new("Sign in to view your Application Key", "Sign in to view your Application Secret");

$options = GrabzItImageOptions->new();
$options->format("png");

$grabzIt->HTMLToImage("<html><body><h1>Hello World!</h1></body></html>", $options);
# Then call the Save or SaveTo method
$grabzIt->SaveTo("result.png");
$grabzIt = GrabzItClient->new("Sign in to view your Application Key", "Sign in to view your Application Secret");

$options = GrabzItImageOptions->new();
$options->format("png");

$grabzIt->FileToImage("example.html", $options);
# Then call the Save or SaveTo method
$grabzIt->SaveTo("result.png");

Размер браузера

Размер браузера относится к размеру окна браузера, которое будет использоваться при захвате скриншота, в большинстве случаев его не нужно устанавливать, так как размер браузера по умолчанию будет достаточным для всех большинства задач. Чтобы использовать размер браузера по умолчанию просто передайте 0 до browserWidth и browserHeight методы GrabzItImageOptions класса.

Изменить размер изображения

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

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

Пользовательский идентификатор

Вы можете передать пользовательский идентификатор изображение методами, как показано ниже, это значение затем возвращается в ваш обработчик GrabzIt Perl. Например, этот пользовательский идентификатор может быть идентификатором базы данных, что позволяет связать снимок экрана с определенной записью базы данных.

$grabzIt = GrabzItClient->new("Sign in to view your Application Key", "Sign in to view your Application Secret");

$options = GrabzItImageOptions->new();
$options->customId("123456");

$grabzIt->URLToImage("https://www.tesla.com", $options);
# Then call the Save method
$grabzIt->Save("http://www.example.com/handler.pl");
$grabzIt = GrabzItClient->new("Sign in to view your Application Key", "Sign in to view your Application Secret");

$options = GrabzItImageOptions->new();
$options->customId("123456");

$grabzIt->HTMLToImage("<html><body><h1>Hello World!</h1></body></html>", $options);
# Then call the Save method
$grabzIt->Save("http://www.example.com/handler.pl");
$grabzIt = GrabzItClient->new("Sign in to view your Application Key", "Sign in to view your Application Secret");

$options = GrabzItImageOptions->new();
$options->customId("123456");

$grabzIt->FileToImage("example.html", $options);
# Then call the Save method
$grabzIt->Save("http://www.example.com/handler.pl");

Скриншот полной длины

GrabzIt позволяет вам сделать полный снимок экрана всей веб-страницы, для этого вам нужно передать -1 в browserHeight метод. Чтобы изображение соответствовало размеру браузера, передайте -1 height и width методы.

$grabzIt = GrabzItClient->new("Sign in to view your Application Key", "Sign in to view your Application Secret");

$options = GrabzItImageOptions->new();
$options->browserHeight(-1);
$options->width(-1);
$options->height(-1);

$grabzIt->URLToImage("https://www.tesla.com", $options);
# Then call the Save or SaveTo method
$grabzIt->SaveTo("result.jpg");
$grabzIt = GrabzItClient->new("Sign in to view your Application Key", "Sign in to view your Application Secret");

$options = GrabzItImageOptions->new();
$options->browserHeight(-1);
$options->width(-1);
$options->height(-1);

$grabzIt->HTMLToImage("<html><body><h1>Hello World!</h1></body></html>", $options);
# Then call the Save or SaveTo method
$grabzIt->SaveTo("result.jpg");
$grabzIt = GrabzItClient->new("Sign in to view your Application Key", "Sign in to view your Application Secret");

$options = GrabzItImageOptions->new();
$options->browserHeight(-1);
$options->width(-1);
$options->height(-1);

$grabzIt->FileToImage("example.html", $options);
# Then call the Save or SaveTo method
$grabzIt->SaveTo("result.jpg");

Вы также можете вернуть миниатюры, которые не обрезаны, но будьте осторожны, это может создать большие изображения. Для этого передайте -1 height и / или width методы. Измерение, переданное как -1, не будет обрезано.

$grabzIt = GrabzItClient->new("Sign in to view your Application Key", "Sign in to view your Application Secret");

$options = GrabzItImageOptions->new();
$options->width(-1);
$options->height(-1);

$grabzIt->URLToImage("https://www.tesla.com", $options);
# Then call the Save or SaveTo method
$grabzIt->SaveTo("result.jpg");
$grabzIt = GrabzItClient->new("Sign in to view your Application Key", "Sign in to view your Application Secret");

$options = GrabzItImageOptions->new();
$options->width(-1);
$options->height(-1);

$grabzIt->HTMLToImage("<html><body><h1>Hello World!</h1></body></html>", $options);
# Then call the Save or SaveTo method
$grabzIt->SaveTo("result.jpg");
$grabzIt = GrabzItClient->new("Sign in to view your Application Key", "Sign in to view your Application Secret");

$options = GrabzItImageOptions->new();
$options->width(-1);
$options->height(-1);

$grabzIt->FileToImage("example.html", $options);
# Then call the Save or SaveTo method
$grabzIt->SaveTo("result.jpg");
Обратите внимание, что нет полной ширины браузера!

Использование этих специальных значений в методах высоты, ширины и высоты браузера означает, что при желании вы можете создать снимок экрана, который будет точным размером всей веб-страницы!

Сделайте скриншот элемента страницы

GrabzIt позволяет сделать снимок экрана с HTML-элемента, такого как div or span тег и захватить весь его контент. Для этого необходимо указать HTML-элемент, который вы хотите сделать на снимке экрана, как CSS селектор.

...
<div id="features">
	<img src="http://www.example.com/boy.jpg"/><h3>Boy Found</h3>
</div>
...

В приведенном ниже фрагменте кода мы сделаем скриншот div с идентификатором «features» и вернем его в виде изображения JPEG 250 x 250px.

$grabzIt = GrabzItClient->new("Sign in to view your Application Key", "Sign in to view your Application Secret");

# The 250 parameters indicates that image should be sized to 250 x 250 px
$options = GrabzItImageOptions->new();
$options->width(250);
$options->height(250);
$options->format("jpg");
$options->targetElement("#features");

$grabzIt->URLToImage("http://www.bbc.co.uk/news", $options);
# Then call the Save or SaveTo method
$grabzIt->SaveTo("result.jpg");

В следующем примере создается еще один снимок экрана с тегом div «functions», но на этот раз выводится изображение JPEG, которое является точным размером div в браузере.

$grabzIt = GrabzItClient->new("Sign in to view your Application Key", "Sign in to view your Application Secret");

# The -1 indicates that image should not be cropped
$options = GrabzItImageOptions->new();
$options->width(250);
$options->height(250);
$options->browserHeight(-1);
$options->format("jpg");
$options->targetElement("#features");

$grabzIt->URLToImage("http://www.bbc.co.uk/news", $options);
# Then call the Save or SaveTo method
$grabzIt->SaveTo("result.jpg");