Algunas veces es interesante hacer capturas de pantalla de páginas web, bien para mantener un histórico o incluso para servir informes.
Vamos a ver cómo capturar la pantalla de una web con NodeJS utilizando el módulo node-webshot.
var webshot = require('webshot');
var options = {
screenSize: {
width: 1920,
height: 1080
},
shotSize: {
width: 1920,
height: 'all'
},
paperSize: {
format: 'A4'
}
};
webshot('http://google.es', 'informe.pdf', options, function(err) {
if (err) {
console.log(err);
}
res.redirect('/');
});
En este ejemplo, nos guarda la página google.es en un PDF a una resolución de 1080p.
Hay muchas opciones, tanto de tamaño, como resolución, etc. consulta la documentación de node-webshot.
Es cierto que con otros módulos, por ejemplo los basados en PhantomJS, se puede hacer también, pero este me pareció más sencillo de mostrar al estar enfocado en sólo esto.
Deja un comentario con tus dudas o preguntas 🙂