Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Taking website screenshot, server-side, on a Linux rented server, free

Ok so, right now I can't really afford to pay for any service. I want to be able to take screenshots using my rented server, which is Linux based, and output them on the screen.

I know there are a lot of services that do this, but they usually have limits or watermarks, or you have to wait for your screenshot to be taken from the queue.

Is there any way to just take the screenshots myself and maybe later cache them or anything? I'm using PHP, but I'm not limited to it; I'm just on a Linux server so GD's appropriate functions wouldn't work. Help! :)

like image 761
casraf Avatar asked Jul 27 '10 11:07

casraf


2 Answers

PhantomJs is the solution

if(phantom.state.length === 0){
  phantom.state = '0_home';
  phantom.open('http://www.mini.de');
}
else if(phantom.state === '0_home'){
  phantom.viewportSize = {width: 800, height: 600};
  phantom.sleep(2000);
  phantom.render('home.png');
  phantom.exit(0);
}
like image 101
cromulus Avatar answered Nov 15 '22 19:11

cromulus


http://cutycapt.sourceforge.net/

CutyCapt is a small cross-platform command-line utility to capture WebKit's rendering of a web page into a variety of vector and bitmap formats, including SVG, PDF, PS, PNG, JPEG, TIFF, GIF, and BMP.

There is no PHP-api, but you can always use it through PHP's exec functions.

like image 34
Kirzilla Avatar answered Nov 15 '22 19:11

Kirzilla