Como Descargar Una Pagina Web

Cómo descargar una página web mediante técnicas black

Mucho tiempo llevaba ya sin escribir; y es que entre el trabajo y los diferentes proyectos que tengo apenas saco tiempo para nada, aunque siempre hay un buen tema sobre el que crear un artículo y en este caso os voy a enseñar a descargar una página web completa de manera muy fácil y a tiro de click!

La utilidad que luego le des a lo que te voy a contar ya depende de ti pero lo mas normal es descargar una página web para leerla offline cuando no tengas conexión a Internet aunque tendrás que ser consciente que los artículos y los contenido no se actualizarán. Si estás cómo con eso adelante!

Lo que me ha motivado para crear este artículo es el hecho de poder tener todos los contenidos de una página web que requiere autorización sin disponer dichos accesos.

Me explico: imagina que tienes acceso temporal a un foro de manualidades y hay tantos artículos interesantes que quieres tener acceso de por vida a esos contenidos una vez que te quiten esa autorización temporal, pues eso es lo que he hecho y es lo que vengo a contar.

Por supuesto vamos a utilizar una técnica un tanto black de dudosa legalidad pero que en el mundo del desarrollo y administración de sistemas es bien conocida desde hace muchísimos años.

Abre bien tus ojos porque este artículo requiere de un poquito de análisis e investigación pero cualquiera puede hacerlo así que vamo’ a darle!

 

Descargar una página web con las herramientas del navegador

Todos los navegadores web tienen una opción para descargarse una página web de una manera ultra sencilla. Tan solo tienes que visitar el sitio web que te interese y con el botón derecho del ratón hacer click y ver la siguiente opción del menú contextual:

Descargando FinoFilipino muajaja

Descargando FinoFilipino muajaja

 

Ese botón Guardar como… te permite descargar la página web que estás viendo en ese momento. Por supuesto que cuando hagas click sobre ahí se te desplegará una modal para elegir la ruta de guardado y poder darle un nombre al archivo.

 

Descargar una página web

Descargar una página web

 

Como ves, en Formato, se especifica que se trata de una Página web completa, pero ya te digo yo que no porque ¿qué pasa con la página número dos? ¿O con las categorías?

No se descargan.

Esto está muy bien si lo que quieres es bajarte solo la portada de una página web pero el objetivo de este artículo es descargar completamente todos los contenidos de una página. Sus categorías relacionadas, sus artículos, las diferentes páginas y los vídeos en caso de que estén alojadas en el mismo servidor.

Y eso se consigue con una mezcla de conocimientos técnicos mínimos, paciencia y mala leche 😛

Descargar una página web como lo haría un juanker

Aquí viene la chicha del artículo. Con este método vas a aprender a descargar una página web como lo haría un auténtico juanker, evadiendo la seguridad, saltándote la autenticación y tirando comandos desde una consola.

menudo juanker estás hecho

 

Para esta técnica vamos a necesitar una utilidad que se llama Wget.

Esta utilidad se trata de un programa libre y gratis que nos permite descargar contenido desde servidores web ya sean HTTP, HTTPS, FTP y FTPS junto a los protocolos mas usados de Internet.

En su concepción es un programa de consola para entornos UNIX escrito en C, esto significa que debes usarlo en Linux o Mac. Todos los programadores macho de verdad utilizamos estos sistemas. Si trabajas con Windows permíteme que me guarde mi opinión sobre ti pero no te preocupes porque existen versiones de Wget para Windows también.

Aquí para descargar

Si vas por linux puedes teclear esto en la consola:

sudo apt-get install wget

Esperáis a que termine la instalación y ea!

Hasta aquí ya hemos terminado la parte de los preparativos, ahora vamos a descargar una página web en modo recursivo. Esto es, descargará todo según su árbol de directorios.

 

Entendiendo el comando wget

Al principio del artículo hemos dicho que haremos esto en un sitio en el que tenemos un acceso temporal nada más.

El comando con el que vamos a descargar una página web de manera recursiva bajo autenticación es el siguiente:

wget -r --load-cookies cookies.txt --keep-session-cookies --save-cookies cookies.txt --post-data='email=EMAIL&password=PASSWD' WEB

Voy a explicar qué es lo que hacen cada uno de sus argumentos y os cuento cómo conseguir cada cosa:

  • -r: Este argumento indica que queremos descargar una página web recursivamente respetando su árbol de directorios.
  • –load-cookies cookies.txt: Argumento con el que cargamos el fichero dónde hemos guardado las cookies de la página web a descargar.
  • –keep-session-cookies: Con este argumento le estamos diciendo que incluya las cookies de sesión al generar el fichero de cookies.
  • –save-cookies cookies.txt: Este argumento hace referencia al fichero de cookies que se va a generar.
  • –post-data=’email=EMAIL&password=PASSWD’: Datos que se envían en una petición POST al autenticarse contra el recurso.

 

Ejemplo práctico de descargar una página web con wget

Lo primero que hay que hacer es ir al escritorio y crear una carpeta para alojar la página web. Para ello:

cd --/Desktop && mkdir web && cd web/

Una vez hayamos creado la carpeta, abrimos el navegador y vamos a la página de login del sitio del que queremos descargar pero no le des al botón todavía, no tengas prisas que tenemos que hacer un par de cosas…

Inspector de elementos de chrome

 

Esto que estás viendo es el inspector de elementos de Chrome. Desde aquí podemos ir navegando por la estructura de la página web, ir jugando con los valores y otras muchas cosas mas.

Lo que nos interesa es encontrar los elementos input que formen parte del formulario y conseguir el valor de su atributo name.

¿Se entiende no?

En la foto superior recalco uno de los datos que necesitamos.

Para el ejemplo los valores son email y password.

Pues esos valores son los que hay que poner en el siguiente atributo del comando wget:

--post-data='email=EMAIL&password=PASSWD'

Sustituid el EMAIL y PASSWD del ejemplo por vuestros datos.

Hasta aquí la primera parte ya la tenemos hecha. Ahora tenemos que conseguir sacar la cookie de sesión una vez que nos logueamos.

Lo podemos hacer también con las herramientas para desarrolladores de los distintos navegadores.

Si nos dirigimos a la pestaña de Application y de ahí a Cookies, veremos todas y cada una de las cookies que utiliza la página web pero la que nos interesa es la de sesión.

Capturando la cookie de sesión

 

Para el ejemplo esta cookie se llamaba PHPSESSID.

La gran mayoría de páginas web, blogs y foros utilizan esta misma cookie así que si tienes suerte y te la encuentras ya habrás terminado tu trabajo pero si no aparece tendrás que investigar un poco por tu cuenta.

¿Tampoco está mal no?

Por último, pillamos el nombre de la cookie y su valor y lo pegamos en un fichero nuevo llamado cookies.txt

PHPSESSID=8903423asdhi34284h23bksdf098...

Y ya está, podemos lanzar el comando y esperar a que se termine la descarga de la página web 🙂

 

Alternativas para Windows

Como no todo iba a ser tan malo, para Windows también hay programas gratis que nos permiten descargar una página web de una forma mas visual.

Algunos van a necesitar mas configuración que otros pero lo básico de poner una url y los datos de formulario lo permiten todos.

WebCopy

WebcopyEste programa como es obvio nos permite descargar una página web para poder consumirla de forma offline. Escanea todo el árbol de directorios de la web y se descarga todos los recursos, fotos, vídeos, estilos css y ficheros js…

Como punto negativo, el programa no cuenta con un inspector de DOM ni de javascript por lo que llegar a depurar ahí es casi una misión imposible.

Pero si te gusta el minimalismo este programa es idóneo porque no le puedes pedir mucho más…

Puedes descargarlo desde aquí.

Web2book

web2bookEste programa de escritorio también nos permite descargar una página web pero lo mas guay de este es que podemos convertirlas a PDF. Podemos configurarlo para que lea de un feed RSS y nos genere un PDF que con un poquito de programación básica y configuración, hacer que nos llegase todas las mañanas al email. O publicar tweets… no sé, muchas opciones.

Puedes descargártelo desde aquí y juguetear un poco.

Website Downloader

Website downloaderSi pasas de instalarte nada, cosa que yo haría, siempre puedes utilizar esta web que cumple con la función. Es igual que con el resto. Se descarga las imágenes, los css y los js y el resto de recursos necesarios. Se los prometen muy rápidos en velocidad de descarga según su página pero a decir verdad yo no he notado esa carga rápida…

Entra desde aquí si tal…

 

 

En principio estas son las diferentes formas que se me ocurren para descargar una página web sin liarnos la manta en la cabeza y programar cosas grandes como un scrapper por ejemplo…

Si se os ocurre algún método más que nos sirva para descargar paginas web déjalo en los comentarios.

A pastar!

¿Te ha parecido este un artículo de 5 estrellas? Dame tu valoración:
Review Date
Reviewed Item
Cómo descargar una página web mediante técnicas black
Author Rating
51star1star1star1star1star

Gorka Muñoz Andrés

Me llamo Gorka Muñoz y soy un desarrollador melómano. Combino a la perfección la búsqueda de nuevos grupos con la pasión por la tecnología. Desde chiquitito me ha gustado la programación, ahora que soy mayor estoy metido en el mundo del SEO sin olvidarme del /Dev.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.