Capture Screenshots in Perl

By Maximus1983 on Jun 27, 2012

Capture Web Screenshots easily with the GrabzIt Perl API. You will need the free GrabzIt Perl Code Library to get started.

For more information on the API visit.

http://grabz.it/api/perl/

Register to get your free Application Key and Application Secret.

http://grabz.it/register.aspx

    #
    #The Perl file that takes the screenshot
    #

    #!/usr/bin/perl

    use GrabzItClient;

    #Create the GrabzItClient class
    #Replace "APPLICATION KEY", "APPLICATION SECRET" with the values from your account!
    $grabzIt = new GrabzItClient("APPLICATION KEY", "APPLICATION SECRET");
    #Take the picture the method will return the unique identifier assigned to this task
    $grabzIt->TakePicture("http://www.google.com", "http://www.example.com/GrabzItHandler.pl");

    #
    #This GrabzItHandler file handles the GrabzIt callback
    #

    #!/usr/bin/perl

    use CGI;
    use CGI::Carp qw(warningsToBrowser fatalsToBrowser);
    use File::Spec;
    use GrabzItClient;

    $cgi = new CGI;

    $message = $cgi->param("message");
    $customId = $cgi->param("customid");
    $id = $cgi->param("id");
    $filename = $cgi->param("filename");

    #Custom id can be used to store user ids or whatever is needed for the later processing of the resulting screenshot

    $grabzIt = new GrabzItClient("APPLICATION KEY", "APPLICATION SECRET");
    $result = $grabzIt->GetPicture($id);

    if ($result)
    {
    #Ensure that the application has the correct rights for this directory.
    open FILE, ">".File::Spec->catfile("images",$filename) or die $!;
    binmode FILE;
    print FILE $result;
    close FILE;
    }

    print <<ENDOFTEXT;
    HTTP/1.0 200 OK

    ENDOFTEXT
    exit(0);

Comments

Sign in to comment.
Are you sure you want to unfollow this person?
Are you sure you want to delete this?
Click "Unsubscribe" to stop receiving notices pertaining to this post.
Click "Subscribe" to resume notices pertaining to this post.