Descargar una página web completa usando wget y nohup


En este tutorial, explicaré 2 maneras de bajar una página web completa usando la interfaz de linea de comando wget.

  • La primera es usando solo un comando que no se ejecuta en segundo plano.
  • La segunda se ejecuta en segundo plano y en un "shell" diferente para que pueda salir de su sesión ssh y continuará de cualquier manera.

Primero prepare una carpeta para descargar los sitios web y comience su descarga, tenga en cuenta que si descarga www.midominio.com tendrá una carpeta como:

/misplantillas/www.midominio.com/

Paso 1:

mkdir /misplantillas/
cd /misplantillas/


Paso 2:

1er Camino

wget --limit-rate=200k --no-clobber --convert-links --random-wait -r -p -E -e robots=off -U mozilla http://www.midominio.com


2do Camino

En el fondo haga un nohup en frente y en la parte posterior

nohup wget --limit-rate=200k --no-clobber --convert-links --random-wait -r -p -E -e robots=off -U mozilla http://www.midominio.com &


Luego liste el directorio donde ejecutó wget  (se ha creado un archivo nohup.out) hagamos un tail -f

tail -f nohup.out


Significado de todos los interruptores: 

 Interruptor       Descripción     
 --limit-rate=200k  Limite de descarga a 200 Kb/seg.
 --no-clobber  No sobrescriba ningún archivo existente (usado en caso de que la descarga se interrumpa y se reanude). 
 --convert-links  Convertir enlaces para que funcionen localmente, fuera de línea, en lugar de apuntar a un sitio web en línea. 
 --random-wait  Esperas aleatorias entre descargas (a los sitios web no les gusta la descarga de sus archivos estáticos).
 -r  Recursivo, descarga el sitio web completo.
 -p  Descarga todo, incluso imágenes, hojas de estilo, java scripts, etc.
 -E  Obtiene la extensión correcta del archivo, sin la mayoría de html y otros archivos que no tienen extensión.
 -e robots=off  Actuar como si no fuéramos un robot, no como un rastreador, a los sitios web no les gustan los robots rastreadores a menos que sean de Google u otro de motor de búsqueda famoso.
 -U mozilla  Pretender ser como un navegador Mozilla que está mirando la página en lugar de un rastreador wget.

Las razones del por qué no se incluyo lo siguiente:

 Interruptor  Descripción
 -o=/websitedl/wget1.txt  Registrar todo para wget log.txt, no hice esto porque no me dio salida en la pantalla y no me gusta esa identificación, prefiero usar nohup y & y tail -f con la salida de nohup.out 
 -b  Ejecución en segundo plano, no puedo ver el progreso, me gusta más "nohup <commands> &"
 --domain=midominio.com  Alojamiendo de Google, es posible que se deba ingresar a los dominios de Google
 --restrict-file-names=windows  Modifica los nombres de archivo para que también funcionen en Windows, parece funcionar bien sin él

Si te gustó compártelo o ponlo en práctica...