Una nueva entrada en entreunosyceros … esta vez la entrada viene dada ante la necesidad de poder disponer en local de ciertas cosas que están colgadas en algunas páginas. Ante la imposibilidad de poder conectarme siempre, me he propuesto hacerlo en local con lo que para ello he optado por descargarme las páginas web enteras para poder realizar mis labores. Para poder hacerlo hay varias opciones disponibles, todas ellas muy válidas, pero siendo usuario Ubuntu, he buscado la opción más cómoda para mi y como no, la solución la he encontrado en nuestra amiga la consola. A través de Wget todo el proceso de descargarse una página web completa se simplifica un montón, pero nada mejor que Wikipedia para explicar en que consiste esta herramienta:
GNU Wget es una herramienta de software libre que permite la descarga de contenidos desde servidores web de una forma simple. Su nombre deriva de World Wide Web (w), y de «obtener» (en inglés get), esto quiere decir: obtener desde la WWW.
Actualmente soporta descargas mediante los protocolos HTTP, HTTPS y FTP.Entre las características más destacadas que ofrece wget está la posibilidad de una fácil descarga de mirrors (espejos) complejos de forma recursiva, conversión de enlaces para la visualización de contenidos HTML localmente, soporte para proxies…
Es cierto que existen otras aplicaciones que nos ayudan a realizar este tipo de labores como httrack o incluso extensiones para Firefox como Scrapbook, pero nada como la sencillez de un terminal.
Haciendo la magia
La magia de esta aplicación quedó patente en la película: The Social Network, en el momento en el que el personaje de Mark_Zuckerberg usa la frase: “Un poco de wget mágico“, cuando se disponía a descargar las fotos para Facemash y es cierto, wget permite hacer magia con los parámetros adecuados.
Veamos un par de ejemplo, comencemos con el uso sencillo de la herramienta.
Bajar una página con Wget
$ wget
Para bajar el sitio completo de forma recursiva, incluyendo imágenes y otros tipos de datos tan solo habrá que añadir un -r al principio como muestro a continuación:
$ wget -r http://entreunosyceros.es/
Y aquí viene la magia. Como he leído por ahí, muchos sitios verifican la identidad del navegador para aplicar diversas restricciones, peor con Wget podemos burlar esto utilizando los parámetros adecuados de la siguiente forma:
wget -r -p -U Mozilla http://entreunosyceros.es/
O también podemos hacer pausa entre cada página para disimular un poco el asunto, ya que de lo contrario el dueño del sitio puede darse cuenta que nos estamos bajando el sitio completamente con Wget (y a mucha gente esto no le hace ni puñetera gracia)
wget --wait=20 --limit-rate=20K -r -p -U Mozilla http://entreunosyceros.es/
Bueno, y con esto doy por concluido este pequeño post. No sin antes decir que para cualquier consulta podemos utilizar la documentación de wget que podrás encontrar en el siguiente enlace.