Capture and Post Screenshots to a Website, Instantly December 10, 2005
Posted by Carthik in ubuntu.trackback
The following script is from Linux Desktop hacks and allows you store screenshots locally as well as publish them to a web page. This is really useful to show people instantly what you see on your screen. It also automatically generates a thumbnail. You can change the delay
before the snap, the quality, the size of the thumbnail and, if you want, have it loop – that is, take a new screenshot every n seconds.
To use this script you need scrot (you can apt-get install scrot).
You also need perl (check if you have it by doing $perl -v) and you need the perl Net::Ftp extension.
Then you have to save the script (as, say scrpost.pl), and make it executable (chmod +x scrpost.pl)
You install scrot and then make a bash script like this, save it as a perl
script and execute it with, for example, ./screenshot.pl:
#!/usr/bin/perl -w
use Net::FTP; #start ftp
#This script puts screenshots directly on a website rather than saving them
#locally. It comes from Desktop Hacks, By Nicholas Petreley, Jono Bacon
#First Edition March 2005, ISBN: 0-596-00911-9 Copyright (c) 2005
# O'Reilly Media, Inc.
#$delay = "5"; #program loop delay in seconds
$delay_snap = "3"; #screen capture delay in seconds
$quality = "75"; #scale of 1-100
$thumb = "25"; #thumbnail size as percentage
$server = "user.com";
$username = "user";
$password = "password";
$serverfolder = "/usr/www/users/yourdir/screenies";
$localfolder = "/home/user/Desktop/screenies";
while()
{
system("scrot $localfolder/currentscreen.jpg -d $delay_snap --thumb
$thumb --quality $quality"); #takes the screenshot
$ftp = Net::FTP->new($server, Debug => 0); #connect
$ftp->login($username, $password); #log in
$ftp->binary(); #change to binary transfer mode
$ftp->cwd($serverfolder); #change to desired server directory
$ftp->delete("$serverfolder/currentscreen.jpg"); #delete any old
screenshot
$ftp->delete("$serverfolder/currentscreen-thumb.jpg"); #delete any old
screenshot thumbnail
print "Deleted old screenshot and thumbnail images\n";
$ftp->put("$localfolder/currentscreen.jpg"); #uploading image
$ftp->put("$localfolder/currentscreen-thumb.jpg"); #uploading thumbnail
print "Completing upload\n";
$ftp->quit; #close ftp session
print "Done. Quitting. Later, dude.\n";
exit;
}
A very nice site you have here dedicated to Ubuntu. I enjoyed reading all your posts. I am a new Ubuntu user and equally new Linux user. Infact I started using Linux only two weeks back. And in this short while I have learned so much. It is really awesome.
btw, I came across your site at linuxhelp.blogspot.com where it is listed as one of the 10 most popular ubuntu sites on the net.
Thanks for maintianing such a good blog dedicated to Ubuntu.
Thanks, Kate. I hope to be of some use to new users, being one myself.
This solution is really awesome – thank you very much. I’ve heard about such a script but only today have found it
you can also enter a url like sftp://hostname/home/username/public_html if you
do System->Take Screenshot, select “Other…” in “Save in folder” and press ctrl-l.
If you used Places -> Connect to Server before taking a screenshot it will also
show up in the “Save in folder” list.
This is using gnome vfs and supports
ftp, sftp, http/https (only if server supports webdav), smb and possibly more.
this is a nie site u’ve got here keep it up man..
Hi.
Looks great, but I get the following. I’m using, mepis, (debian based) with KDE. Would that be an issue?
louis@5[~]$ ./scrpost.pl
scrot: option `–thumb’ requires an argument
sh: line 1: 25: command not found
Can’t locate object method “screenshot” via package “Net::FTP” at ./scrpost.pl line 28.
There is another script on the french Ubuntu forums
(comments/text are in french but…)
http://forum.ubuntu-fr.org/viewtopic.php?id=23365
@louis
For the Net::FTP problem just install libnet-perl package from synaptic (or apt-get).
For the -thumb problem is simple, adjust the second line of the code.. in this blog the command got broken in two lines and gives you the problem
@all (if interested)
I used xbindkeys (and xbindkeys-config) to create a keyboard shorcut.. so now I’ve only to press F2 to upload my latest screenshot..
@ubuntonista, really great blog ^_^ bye
So excited to come across this site! looks great!
However, for some reasons I cann’t see the complete code on my screen. It sounds that the end of the lines are cut. May I ask you please to instruct me to get the complete code.
Thanks,
F
hey bud,…………
very appreciated effort………but i wonder if this will be able to take screenshoots of multi urls at a time………
pls reply,……..its urgent
Thanks, Kate. I hope to be of some use to new users, being one myself.
This is using gnome vfs and supports
ftp, sftp, http/https (only if server supports webdav), smb and possibly more.
I’m extremely impressed with your writing talents and also with the layout for your blog. Is this a paid subject matter or did you customize it your self? Either way stay up the excellent high quality writing, it’s uncommon to see a nice weblog like this one nowadays.
.
Thanks for finally talking about >Capture and Post Screenshots to a
Website, Instantly | Ubuntu Blog <Liked it!