Cómo descargar páginas web y archivos usando wget

Cómo descargar páginas web y archivos usando wget

Cómo descargar páginas web y archivos usando wget

VALORACIÓN DEL ARTÍCULO:
5/5


La utilidad wget le permite descargar páginas web, archivos e imágenes desde la web utilizando la línea de comandos de Linux.

Puede utilizar un único comando wget por sí solo para descargar desde un sitio o configurar un archivo de entrada para descargar varios archivos en varios sitios.

De acuerdo con la página de manual wget puede ser utilizado incluso cuando el usuario ha salido del sistema. Para ello se utiliza el comando nohup .

La utilidad wget reintentará una descarga incluso cuando la conexión se interrumpa, reanudando desde donde la dejó si es posible cuando la conexión regrese.

Puede descargar sitios web completos utilizando wget y convertir los enlaces para que apunten a fuentes locales, de modo que pueda ver un sitio web sin conexión.

Las características de wget son las siguientes:

  • Descargar archivos utilizando HTTP, HTTPS y FTP
  • Reanudar descargas
  • Convierta los enlaces absolutos de las páginas web descargadas en URLs relativas para que los sitios web se puedan ver sin conexión
  • Soporta proxies HTTP y cookies
  • Soporta conexiones HTTP persistentes
  • Puede ejecutarse en segundo plano incluso cuando no está conectado
  • Funciona en Linux y Windows

Índice de contenidos

Cómo descargar un sitio web usando wget

Para esta guía, aprenderás a descargar este blog de linux.

wget www.everydaylinuxuser.com

Vale la pena crear su propia carpeta en su máquina usando el comando mkdir y luego moverse a la carpeta usando el comando cd .

Por ejemplo:

mkdir everydaylinuxuser
cd everydaylinuxuser
wget www.everydaylinuxuser.com

El resultado es un único archivo index.html. Por sí solo, este archivo es bastante inútil, ya que el contenido todavía se extrae de Google y las imágenes y hojas de estilo se mantienen en Google.

Para descargar el sitio completo y todas las páginas puede utilizar el siguiente comando:

wget -r www.everydaylinuxuser.com

Esto descarga las páginas recursivamente hasta un máximo de 5 niveles de profundidad.

Cinco niveles de profundidad podrían no ser suficientes para obtener todo del sitio. Puede utilizar el parámetro -l para establecer el número de niveles a los que desea ir como se indica a continuación:

wget -r -l10 www.everydaylinuxuser.com

Si desea una recursión infinita, puede utilizar lo siguiente:

wget -r -l inf www.everydaylinuxuser.com

También puede reemplazar inf por 0, lo que significa lo mismo.

Todavía hay un problema más. Es posible que obtenga todas las páginas localmente, pero todos los enlaces en las páginas todavía apuntan a su lugar original. Por lo tanto, no es posible hacer clic localmente entre los enlaces de las páginas.

Puede sortear este problema utilizando el parámetro -k , que convierte todos los enlaces de las páginas para que apunten a su equivalente descargado localmente de la siguiente manera:

wget -r -k www.everydaylinuxuser.com

Si desea obtener una réplica completa de un sitio web, puede utilizar simplemente el siguiente modificador, que elimina la necesidad de utilizar los modificadores -r -k y -l .

wget -m www.everydaylinuxuser.com

Por lo tanto, si usted tiene su propio sitio web, puede hacer una copia de seguridad completa utilizando este sencillo comando.

Ejecutar wget como un comando de fondo

Puede obtener wget para que se ejecute como un comando de fondo, lo que le permite continuar con su trabajo en la ventana de terminal mientras se descargan los archivos.

Simplemente use el siguiente comando:

wget -b www.everydaylinuxuser.com

Por supuesto, puede combinar interruptores. Para ejecutar el comando wget en segundo plano mientras se replica el sitio, debería utilizar el siguiente comando:

wget -b -m www.everydaylinuxuser.com

Puede simplificarlo como se indica a continuación:

wget -bm www.everydaylinuxuser.com

Registro

Si está ejecutando el comando wget en segundo plano, no verá ninguno de los mensajes normales que envía a la pantalla.

Puede obtener todos esos mensajes enviados a un archivo de registro para que pueda comprobar el progreso en cualquier momento usando el comando tail .

Para enviar información desde el comando wget a un archivo de registro, utilice el siguiente comando:

wget -o /path/to/mylogfile www.everydaylinuxuser.com

Lo contrario, por supuesto, es no requerir ningún registro y ninguna salida a la pantalla. Para omitir todas las salidas, utilice el siguiente comando:

wget -q www.everydaylinuxuser.com

Descargar desde varios sitios

Puede configurar un archivo de entrada para que se descargue desde muchos sitios diferentes.

Abra un archivo usando su editor favorito o incluso el comando cat y simplemente comience a listar los sitios o enlaces para descargar desde cada línea del archivo.

Guarde el archivo y luego ejecute el siguiente comando wget :

wget -i /path/to/inputfile

Aparte de hacer una copia de seguridad de su propio sitio web o tal vez encontrar algo para descargar para leer en el tren, es poco probable que usted quiera descargar un sitio web completo.

Es más probable que descargue una sola URL con imágenes o que descargue archivos como archivos zip, archivos ISO o archivos de imagen.

Con esto en mente, no es necesario que escriba lo siguiente en el archivo de entrada, ya que consume mucho tiempo:

  • http://www.myfileserver.com/file1.zip
  • http://www.myfileserver.com/file2.zip
  • http://www.myfileserver.com/file3.zip

Si sabe que la URL base siempre va a ser la misma, puede especificar lo siguiente en el archivo de entrada:

  • file1.zip
  • file2.zip
  • file3.zip

A continuación, puede proporcionar la URL base como parte del comando wget como se indica a continuación:

wget -B http://www.myfileserver.com -i /path/to/inputfile

Opciones de reintento

Si ha configurado una cola de archivos para descargar dentro de un archivo de entrada y deja su ordenador funcionando toda la noche para descargar los archivos, se molestará bastante cuando baje por la mañana para descubrir que se ha quedado atascado en el primer archivo y ha estado volviendo a intentarlo toda la noche.

Puede especificar el número de reintentos utilizando el siguiente conmutador:

wget -t 10 -i /path/to/inputfile

Es posible que desee utilizar el comando anterior junto con el parámetro -T que le permite especificar un tiempo de espera en segundos de la siguiente manera:

wget -t 10 -T 10 -i /ruta/al/archivo de entrada

El comando anterior se reintentará 10 veces y tratará de conectarse durante 10 segundos para cada enlace del archivo.

También es bastante molesto cuando usted ha descargado parcialmente el 75% de un archivo de 4 gigabytes en una conexión de banda ancha lenta sólo para que su conexión se desconecte.

Puede usar wget para volver a intentarlo desde donde dejó de descargarse utilizando el siguiente comando:

wget -c www.myfileserver.com/file1.zip

Si está martillando un servidor, es posible que al host no le guste demasiado y que bloquee o simplemente elimine sus peticiones.

Puede especificar un período de espera que especifique el tiempo de espera entre cada recuperación de la siguiente manera:

wget -w 60 -i /path/to/inputfile

El comando anterior esperará 60 segundos entre cada descarga. Esto es útil si está descargando muchos archivos de una sola fuente.

Algunos anfitriones de la tela pueden manchar la frecuencia sin embargo y le bloquearán de todos modos. Puede hacer que el período de espera sea aleatorio para que parezca que no está usando un programa de la siguiente manera:

wget --random-wait -i /path/to/inputfile

Protección de los límites de descarga

Muchos proveedores de servicios de Internet todavía aplican límites de descarga para su uso de banda ancha, especialmente si vive fuera de una ciudad.

Es posible que desee agregar una cuota para no sobrepasar el límite de descarga. Puede hacerlo de la siguiente manera:

wget -q 100m -i /ruta/al/archivo de entrada

Tenga en cuenta que el comando -q no funcionará con un único archivo. Por lo tanto, si descarga un archivo de 2 gigabytes de tamaño, el uso de -q 1000m no detendrá la descarga del archivo.

La cuota sólo se aplica cuando se realiza una descarga recursiva desde un sitio o cuando se utiliza un archivo de entrada.

Cómo pasar por seguridad

Algunos sitios requieren que inicie sesión para poder acceder al contenido que desea descargar.

Puede utilizar los siguientes modificadores para especificar el nombre de usuario y la contraseña.

wget --user=yourusername --password=yourpassword

Nota sobre un sistema multiusuario: si alguien ejecuta el comando ps , podrá ver su nombre de usuario y contraseña.

Otras opciones de descarga

De forma predeterminada, el parámetro -r descargará el contenido de forma recursiva y creará directorios a medida que avanza.

Puede hacer que todos los archivos se descarguen a una sola carpeta utilizando el siguiente conmutador:

wget -nd -r

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>»»»»>>>>>>>>>>>>»»»>>>>>)

Lo contrario de esto es forzar la creación de directorios que se pueden lograr usando el siguiente comando:

wget -x -r

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>»»»»>>>>>>>>>>>>»»»»>>>>>)

Cómo descargar ciertos tipos de archivos

Si desea descargar recursivamente desde un sitio pero sólo desea descargar un tipo de archivo específico como un.mp3 o una imagen como un.png, puede utilizar la siguiente sintaxis:

wget -A "*.mp3" -r

TAMBIÉN TE INTERESA

recetas-de-postres

Conviértete en todo un chef con las recetas de cocina de Alexa

El famoso asistente de voz de Amazon puede hacer casi de todo lo que le pidas, incluidas las recetas de cocina de Alexa. Tras cinco años de vida en España, algo más en Estados Unidos, los datos que maneja la compañía indican que muchas personas recurren a Alexa como su ayudante en la cocina, ya

videos-TikTok

TikTok vs. Google: la red social planta cara al buscador rey

Las búsquedas en Internet viven su particular Juego de Tronos. Google siempre ha estado sentado en el Trono de Hierro pero cada vez más familias están pujando por destronar al rey. Sin duda, Microsoft se ha postulado como un digno rival con su navegador Edge y la puesta en marcha de la IA en esta

Zoom-Workplace

Zoom Workplace, la plataforma de trabajo que ha ideado Zoom con base en la IA

En cuestión de cuatro años, Zoom ha pasado de ser una gran desconocida a toda una referencia en el mundo de las comunicaciones. De emerger como herramienta de videollamadas en la pandemia, hoy Zoom se ha convertido en toda una solución multiusos para la vida diaria y el trabajo, cuya culminación se ha traducido con

fusión-Orange-MásMóvil

Orange y MásMóvil: arranca el nuevo gigante de las teleco en España

Orange y MásMóvil han anunciado al fin la formación de su nueva empresa conjunta, completando así el acuerdo para fusionar sus operaciones en España. Tras años de negociación, se ha completado una operación que ha dado lugar a la creación de la mayor operadora de telecomunicaciones en España. Los accionistas de ambas compañías poseen el

Instagram-Creator-Marketplace

España, a la espera del Instagram Creator Marketplace

Instagram es una de las redes sociales de mayor impacto en la población española. Desde su irrupción, la figura del influencer ha crecido enormemente en el mundo del marketing y las marcas. La herramienta Instagram Creator Marketplace puede seguir fortaleciendo a estos prescriptores, visto el potencial que empieza a tener este servicio en Estados Unidos.