Avisar de contenido inadecuado

wget

{
}

Es una herramienta (para mi la mejor que existe) que permite la descarga no interactiva de contenidos desde servidores HTTP, HTTPS y FTP. Traducido al cristiano, permite descargarse webs enteras, archivos individuales, etc.

Entre sus características tenemos:

  • Soporte para proxies.

  • Descarga recursiva.

  • En caso de que este disponible, hace uso de conexiones persistentes

  • Soporta Ipv6, SSL/TLS.

  • Archivos más grandes de 2Gb en sistemas de 32 bits.

  • Regulación de la velocidad de descarga.

La síntesis del comando es la siguiente.

wget [opciones] ... [URL] ...

Si las opciones no necesitan agrumentos se pueden poner juntas

wget -drc <url> es igual a wget -d -r -c <url>

Todas las opciones tiene dos formas, una corta y una larga, nosotros usaremos la corta, así entre otras tenemos.

-V o –version : Muestra la versión de wget.

-h o –help : Mensage de ayuda describiendo las opciones.

-b o –background: Iniciar en segundo plano.

No explicaré todas las opciones de este comando, pues son muchísimas, para poder verlas solo tenéis que ejecutar el ya conocido man.

man wget

La mejor forma de ver como funciona esta herramienta es mediante ejemplos.

En su forma más simple nos permite bajar un archivo.

wget http://cv.uoc.es/cdocent/0ICE46FXIL2SZE7X8X1J.pdf

o varios

wget http://cv.uoc.es/cdocent/8X1J.pdf http://cv.uoc.es/cdocent/8X2J.pdf

Utilizar patrones.

wget http://cv.uoc.es/cdocent/*.pdf

Si la lista de ficheros a descargar es muy extensa, podemos simplificar la cosa utilizando un archivo de texto, en el que pondremos la dirección de cada archivo a descargar en una nueva linea, y llamar al programa de la siguiente manera.

wget -i links.txt

Otra opción muy interesante es la que nos permite continuar una descarga que ha sido interrumpida.

wget -c http://static.obolog.com/multimedia/blogs/banyut.jpg

Si hiciera falta usuario y password tenemos las opciones --ftp-user y --ftp-password o --http-user y --http-password según sea el protocolo de descarga.

wget --http-user=root --http-password=mi_pas http://www.servidor.com/file.zip

Si lo que queremos es bajarnos toda un sitio web, tendremos que usar la opción que nos da la recursividad en la descarga.

wget -r http://www.pagina.org

Esto no descarga el sitio completo, para ello tenemos que usar la opcion -p que indica a wget que tiene que bajar las imagenes, javascripts, etc. necesarios para desplegar la pagina.

wget -rp http://www.pagina.org

Ahora ampliaremos el caso de los patrones, una posibilidad interesante es bajarse todos los archivos de una determinada extensión, imaginemos que queremos descargar todas las imágenes de una web. Las opciones -nc es para que no descargue lo que ya esta bajado y -np para que la recursividad solo sea hacia los hijos, no hacia el padre.

wget -r -A=”jpg”,”JPG”,”gif”,”GIF” -nc -np http://www.pagina.com/dir

El mismo formato que -A tiene la opción -R, pero esta hace todo lo contrario, con ella marcamos las extensiones a excluir en la descarga, así si en el ejemplo anterior substituimos la -A por la -R, descargaremos todo los archivos menos los que tengan la extensión indicada.

La recursión puede llegar a ser un problema, por lo que disponemos de la opción -l que indica el número máximo de niveles de recursión, en el siguiente ejemplo hasta cuatro niveles (el valor por defecto es 5).

wget -r -l4 http://www.pagina.org

Para obtener una copia exacta del sitio, el programa pone a nuestra disposición la opción -m, esta opción es equivalente a todas las siguientes juntas:

  • -r : Recursividad

  • -N : Descargar solo archivos más nuevos que los locales

  • -l inf : nivel infinito de recursividad.

  • --no-remove--listing. :en FTP no borrar los archivos '.listing'

wget -m http://www.pagina.org

El siguiente problema que nos podemos encontrar al descargar un sitio web a nuestro disco local, son con los links, estos suelen apuntar al antiguo dominio, con la opción -k, wget descargará el sitio web y al finalizar convertirá todos los links en enlaces locales. También es útil adjuntar la opción -E, que convertirá todas los archivos a .html.

wget -rkE http://www.pagina.org

Demosle otra vuelta de tuerca, usaremos -H que nos permitirá que la recursión nos lleve hasta enlaces externos (si un enlace apunta a otro sitio, este también lo descarga). Esta opción puede resultar interminable, ya que descargará todo sitio al que apunte la URL que le hemos pasado. El resto de opciones utilizadas ya la hemos visto anteriormente.

wget -Hr -l inf -k -E -p http://www.servidor.html

Con todo lo que hemos visto hasta ahora tenemos más que suficiente para cubrir el 90% de nuestras necesidades, las siguientes opciones las considero un poco más avanzadas y que servirán para ajustar hasta limites insospechados nuestras descargas.

Opciones avanzadas.

Podemos hacer que la salida por consola sea desviada a un archivo utilizaremos la opción -o. Si sustituimos la opción -o por -a, la salida se añadira al final del archivo indicado.

wget -rkE -o salida.txt http://www.pagina.org

Por defecto wget realiza 20 reintentos cuando una conexión es rechazada o no encontrada (errores del tipo 404), con la opción -t podemos modificar este comportamiento. En nuestro ejemplo lo podremos a 5. Si queremos que insista hasta conseguir la conexión, le daremos un valor de 0 o inf

wget -rkE -t5

Podemos aparentar que la petición la realizamos con un navegador determinado.

wget –user-agent=Opera http://www.pagina.org/fich.iso

Otras opciones son:

  • -d : muestra mucha más información del proceso.

  • -q: modo silencioso, no muestra nada en consola.

  • -nv: desactiva la salida detallada

  • -S: muestra la respuesta del servidor.

  • -Y: activa el proxy

  • -nc: salta las descargas que ya se han realizado.

  • -random-wait: espera entre 0 y 2*wait shttp://www.pagina.orgegundos entre reintentos.

  • -T secons: segundos para terminar una conexión.

  • -w secons: tiempo de espera despúes de cada intento de descarga fallida.

  • -b: El proceso se ejecuta en segundo plano.

  • -erobots=off: ignora los archivos robots.txt

{
}
{
}

Comentarios wget

[...]t-align:center;"> Herramienta WGET Extraido de banyut Es una herramienta que permite la descarga no interactiva de contenidos desde servidores HTTP, HTTPS y FTP. Traducido al cristiano, permite descargarse webs enteras, archivos individuales, etc. Entre sus características tenemos: Soporte para proxies. Descarga recursiva. En caso de que este disponible, hace uso de conexiones persistentes Soporta Ipv6, SSL/TLS. Archivos más grandes de 2Gb en sistemas d[...]

muy buena la entrada, yo buscando un gestor con estas caracteristicas para Linux estoy ingresando de apoco a este universo y lo hare con ubuntu y esta herramienta esta genial.


Si fuera posible unos tips para instalacion por favor,muchas gracias y reitero mis mayores felicitaciones


saludos

Hola caminante,


En ubuntu, que parece que es lo que estas utilizando, la instalación es tan simple como teclear el siguiente comando en la consola.


sudo aptitude install wget


saludos

[...]/archivo/2007/03/29/descargar-una-pagina-web-completa-en-linux/ Ampliación del Post: En mundo ubuntu, he encontrado un manual detallado del comando wget, que permite cambiar los links de las páginas descargadas, en links locales opción -k[...]

Deja tu comentario wget

Identifícate en OboLog, o crea tu blog gratis si aún no estás registrado.

Avatar de usuario Tu nombre