Con el terminal: Bajar un sitio web completo con Wget

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 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

Me resultó curioso en la película: The Social Network, como 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.

Para bajar una página:

$ wget https://blog.desdelinux.net/con-el-terminal-bajar-un-sitio-web-completo-con-wget

Para bajar el sitio completo de forma recursiva, incluyendo imágenes y otros tipos de datos:

$ wget -r https://blog.desdelinux.net/

Y aquí viene la magia. Como bien nos explican en el artículo de HumanOS, muchos sitios verifican la identidad del navegador para aplicar diversas restricciones. Con Wget podemos burlar esto de la siguiente forma:

wget  -r -p -U Mozilla https://blog.desdelinux.net/

O también podemos hacer pausa entre cada página, ya que de lo contrario el dueño del sitio puede darse cuenta que e estamos bajando el sitio completamente con Wget.

wget --wait=20 --limit-rate=20K -r -p -U Mozilla https://blog.desdelinux.net/


34 comentarios, deja el tuyo

Deja tu comentario

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

*

*

  1. Responsable de los datos: Miguel Ángel Gatón
  2. Finalidad de los datos: Controlar el SPAM, gestión de comentarios.
  3. Legitimación: Tu consentimiento
  4. Comunicación de los datos: No se comunicarán los datos a terceros salvo por obligación legal.
  5. Almacenamiento de los datos: Base de datos alojada en Occentus Networks (UE)
  6. Derechos: En cualquier momento puedes limitar, recuperar y borrar tu información.

  1.   pandev92 dijo

    No hay algo para bajar solo las imagenes xd?

    1.    Courage dijo
      1.    pandev92 dijo

        lol o.o xd

    2.    KZKG^Gaara dijo

      man wget 😉

      1.    pandev92 dijo

        La vida es demasiado corta como para leer mans.

        1.    KZKG^Gaara dijo

          La vida es muy corta para llenar el cerebro de información, pero aún así es válido intentarlo 🙂

          1.    pandev92 dijo

            Información vale la pena a media, prefiero llenarla de mujeres, juegos y dinero si es posible XD.

          2.    Courage dijo

            Joder siempre estás pensando en mujeres. De aquí a nada estarás escuchando a Dadee Yankee, Don Omar y Wisin Y Yandel como hace KZKG^Gaara.

            Dedíacate mejor al dinero, que es lo más importante que hay en esta vida

            1.    KZKG^Gaara dijo

              Hay cosas que valen mucho más que el dinero… por ejemplo, quedar en la historia, marcar la diferencia, ser recordado por cuánto lograste aportar al mundo; y no por cuánto dinero tuviste cuando moriste 😉

              Intenta no volverte un hombre de éxito sino un hombre de valor, Albert Einsein.


          3.    Courage dijo

            ¿Y eso lo puede hacer un pordiosero que vive debajo de un puente sin tene un duro?

            Pues no

          4.    Courage dijo

            *tener

          5.    pandev92 dijo

            Courage, tuve mi epoca reguetonera y pues ya no, de eso hace años, yo solo escucho música japonesa y música clásica, y con el dinero … estamos trabajando en ello :).

          6.    pandev92 dijo

            Me da igual ser recordado gara, cuando me habré muerto me habre muerto y que se jodan los demás, dado que yo ni siquiera podre saber lo que piensan de mí. De que vale ser recordado sino puedes enorgullecerte de ello xD.

    3.    hipersayan_x dijo

      Para descargar un tipo específico de archivos podes usar filtros:

      https://www.gnu.org/software/wget/manual/html_node/Types-of-Files.html

      Y un consejo, Si van a clonar una pagina muy grande lo recomendable es que lo hagan a través de algún proxy como tor, porque de lo contrario hay ciertas paginas que llegado a cierto numero de peticiones seguidas te bloquea la IP durante varias horas o días.
      La otra vez me paso eso cuando quise clonar una wiki.

    4.    Mdir dijo

      Una extensión, que uso en Firefox baja solo imagenes; se llama «Save Images 0.94»

  2.   Pardo dijo

    eh una preguntonta jeje donde se guardan los archivos que descargo? Me van a querer matar no? jajaja

    1.    KZKG^Gaara dijo

      Los archivos se descargan en la carpeta donde estés ubicado en la terminal a la hora de ejecutar el wget 😉

  3.   AurosZx dijo

    Ahh, no me imagine que wget pudiera tener un uso tan interesante… Ahora, respecto al uso que menciona Courage… Sin palabras 😉

  4.   Carlos-Xfce dijo

    ¿Alguien sabe si existe alguna extensión («plug-in») de WordPress que impida que Wget descague tu blog?

  5.   darzee dijo

    Pues me viene genial!! Gracias

  6.   piolavski dijo

    Muy bueno, probemos a ver que tal, gracias por el aporte.

  7.   lyairmg dijo

    Aunque me considero principiante esto se me hace sencillo ahora intentare mezclarlo con otras cosas y ver que da….

  8.   oswaldo dijo

    Espero me puedan ayudar porque es para el lunes 3 de diciembre del 2012

    El proyecto a desarrollar es el siguiente :

    Reubicacion de un sitio web ajustando las referencias href.
    1.-Considerando un sitio Web, descargar el sitio completo a un directorio local mediante el comando wget. Y mediante un script de su autoría realizar las siguientes operaciones:

    1.1.-Crear un directorio independiente para cada tipo de contenido: imágenes gif, imágenes jpeg, etc, vídeos avi, vídeos mpg, etc, audio mp3, audio wav, etc., contenido web (HTML, javascript, etc).

    1.2.-Una vez que se ha reubicado cada uno de estos contenidos, llevar a cabo el ajuste de las referencias hacía las ubicaciones locales de cada recurso del sitio.

    1.3.-Activar un servidor Web, y configurar el directorio raíz en donde se encuentra el respaldo del sitio Web como el directorio root del servidor Web local.

    1.4.-Nota: el comando wget solo se podrá usar con las opciones siguientes:
    –recursive
    –domains
    –page-requisites
    Si por alguna razón son necesario mas comandos, utilizar los necesarios.

    1.    KZKG^Gaara dijo

      Para descargar acá creo que tienes la solución en el post, ahora … para mover archivos y reemplazar las rutas, yo tuve que hacer algo así hace un tiempo en mi trabajo, te dejo el script que usé: http://paste.desdelinux.net/4670

      Lo modificas teniendo en cuenta el tipo de archivo y la ruta, o sea, como están conformados los .HTMLs del sitio tuyo y eso.

      Esto no es la solución 100% pues debes hacerle algunos arreglos o cambios pero, te garantizo que es el 70 u 80% de todo el trabajo 😉

      1.    oswaldo dijo

        Gracias KZKG^Gaara me ha sido de gran ayuda

  9.   Debd dijo

    yo siempre he usado httrack. Scrapbook para firefox voy a probarlo, pero lo de wget me encanta. Gracias!

  10.   Daniel P Z dijo

    Man, no me funco el comando… este si me funko bien:

    wget –random-wait -r -p -e robots=off -U mozilla http://www.example.com

    1.    Daniel dijo

      Muchas gracias! Lo usé con los parámetros propuestos por Daniel P Z y no tuve problemas 🙂

  11.   Rubén Almaguer dijo

    Gracias, muchacho, eso lo hacía con WGet en mi puppy linux pero no sabía cómo se hace en terminal. Un saludo

  12.   pistonudo dijo

    donde guarda las paginas??

    1.    Hache dijo

      En donde tengas abierta la terminal. En un principio, en tu carpeta raíz de usuario, a no ser que le indiques otra ruta.

  13.   fernando dijo

    Tambien baja los enlaces? osea si hay un enlace a un pdf u otro documento tambien lo descarga?

  14.   raul dijo

    Que puedo hacer para bajar mi blog completo ,lo intente y lo que bajo no lo puedo ver parece que esta en codigos o bloqueado ,a pesar de tardar muchas horas para bajar pero solo la pagina inicial se puede leer,que me recomienda para poder bajar mi blog,gracias raul.

  15.   leo dijo

    hola, una duda es posible reemplazar los links dentro de los html, para posteriormente poder navergar por la pagina descargada como si fuera la original.

    lo que pasa es que descargue la pagina y cuando la abrí desde los archivos descargados no me tomaba los .css ni los .js y los links en la pagina me llevan a la pagina en Internet.