Take Website Screenshots with Perl
GrabzIt's screenshot API is very flexible and can be called in many ways such as from a cronjob, a web page or application. The simplest way to add screenshots or HTML to conversion functionality and more to your Perl application is to follow these steps:
- Get your free Application Key and Secret.
- Download the free Perl Library and try out the Demo Application.
- Find out the basics about how GrabzIt's API works by reading the below overview.
Perl API Overview
To use the API you will first need to create an instance of the GrabzItClient class and pass your application key and application secret from your GrabzIt account to the constructor.
# Create the GrabzItClient class
# Replace "APPLICATION KEY", "APPLICATION SECRET" with the values from your account!
$grabzIt = GrabzItClient->new("Sign in to view your Application Key", "Sign in to view your Application Secret");
Then use one of the image, PDF, animation or table methods to capture a URL or convert HTML.
# To take a image screenshot
# Or to take a PDF screenshot
# Or to convert online videos into animated GIF's
# Or to capture table(s)
# To convert HTML into a image
# Or convert HTML into a PDF document
# Or convert HTML into a CSV, XLSX or JSON document
# To convert HTML file into a image
# Or convert HTML file into a PDF document
# Or convert HTML file into a CSV, XLSX or JSON document
Finally use one of the two following save methods. The first save method shown below requires the URL of handler.pl this handler will process the callback from GrabzIt and save the resulting screenshot.
If the recommended Save method above can't be used then the synchonous SaveTo method can be used. However this will force your application to wait while the screenshot is created, it is then automatically saved to the specified file path.
$filepath = "images/result.jpg";
When creating screenshots or converting HTML there are many more options including; configuring the browser height, browser width, screenshot height, screenshot width, the delay before a screenshot is taken and the image format of the screenshot. For all these options and more please see the Client documentation.