¿Que es wget?
Wget es una pequeña pero muy útil aplicación de terminal que sirve para descargar archivos, hay muchas aplicaciones gráficas y (para muchos) más cómodas para ello, pero como siempre digo y recomiendo, hay que tener en cuenta la terminal cuando todo lo demás falle. Wget es muy potente, soporta ftp, http y https en esta entrada daré a conocer el uso básico de esta herramienta.
Descargar uno o varios archivos
Colocando directamente la URL
wget http://ejemplo.org/directorio/archivo.7z
wget http://ejemplo.org/directorio/archivo.7z http://ejemplo2.org/directorio/archivo2.7z ftp://ejemplo3.org/directorio/archivo3.7z
Descargar a partir de un lista
Podemos descargar varios archivos si metemos todos en una lista y luego colocamos la opción -i.
Así, crear un archivo con las URL de los archivos que serán descargados:
http://ejemplo.org/directorio/archivo.7z
http://ejemplo2.org/directorio/archivo2.7z
ftp://ejemplo3.org/directorio/archivo3.7z
Guardarlo con algún nombre cualquiera como “descargar.txt” y luego:
wget -i descargar.txt
Supón que tienes un directorio con archivos nombrados desde el p001.jpg hasta el p020.jpg y quieres descargarlos todos, utilizas “{“ y “}” para colocar el rango de los valores del nombre de los archivos a descargar:
wget wget es.sitiodemanga.com/jejeje/manga/unbuenuso/jeje12345/p0{00..20}.jpg
(nota que el valor prefijo es “p0” que se repirte en todos los archivos).
También podrías descargar del p003.jpg al p009.jpg
wget wget es.sitiodemanga.com/jejeje/manga/unbuenuso/jeje12345/p00{3..9}.jpg
(nota que ahora el valor prefijo es “p00” puesto que es el que se repite).
Opciones varias
Si la descarga se interrumpe y quieres continuarla a partir de donde que se quedó, puedes utilizar la opción -c
wget -i -c http://ejemplo.org/directorio/archivo.7z
wget -i -c descargar.txt
Si arroja un error similar a este:
Reusing existing connection to [sitio]
HTTP request sent, awaiting response... 403 Forbidden
[fecha] [hora] ERROR 403: Forbidden.
Es porque el sitio no permite al wget descargar, ya que solo permite el acceso desde un navegador, en muchos casos ese no es problema, le decimos al wget que se identifique con el navegador con la opción -U así:
wget -U firefox http://es.sitiorestrictivo.com/blablabla/arhivo.rar
Hay sitios que tienen problemas técnicos y a veces no reaccionan a la primera, ni a la segunda, ni muchas otras veces, pero llega el momento en el que si se logra atender una petición, para esos intentos persistentes se puede usar la opción -t [numIntentos]. Por defecto wget hace 20 intentos de conexión, probemos con 10 intentos más:
wget -t 30 http://weblentaysaturada.net/archivo.tar.gz
Si quieres intentos infinitos hasta que se logre la conexión prueba con la opción “-t inf”
wget -t inf http://weblentaysaturada.net/archivo.tar.gz
Se puede descargar un sitio .html
wget www.lignux.com
Usar la opción -p para descargar los elementos extras de la página como CSS, imágenes, etc:
wget -p www.lignux.com
Conservar la fecha y hora del archivo original que se descargo (y no la fecha de nuestro sistema)
wget -N www.sitio.com/archivo.odt
Descarga recursiva por niveles
La opción -r sirve para descargar recursivamente 5 niveles del sitio
$ wget -r http://eheheh.com/directorio
Pero se puede cambiar el nivel de recursividad con la opción -l[numero]
Un nivel de recursividad:
$ wget -r -l1 http://eheheh.com/directorio
Tres niveles de recursividad:
$ wget -r -l3 http://eheheh.com/directorio
Quince niveles de recursividad:
$ wget -r -l15 http://eheheh.com/directorio
Descargar solamente un tipo de archivo con la opción -A.extension
$ wget -r -l1 -A.bz2 http://eheheh.com/directorio
En ese ejemplo se descarga solamente los archivos .bz2 en un nivel de directorio de forma recursiva.
Esto es todo por ahora, solo es un poco de todo lo que se puede hacer con wget, si quieren informarse más (mucho más) y saben Inglés pueden leer este manual de Wget: http://www.gnu.org/software/wget/manual/wget.html Saludos.
Si no se sabe la ruta de los ficheros de una web para descargar ,wget en la terminal es inutil,
Te consulto, WGET si o si requiere internet? Si tengo una intranet, hay alguna opcion que me permit descargar de una IP en particular sin que de error de HTML?
¿La opción de las llaves “{..}” es de wget o de bash?
Posdata: gracias. Me estaba desesperando en tratar de bajar manga con wget. ni con “-p” me salían las imágenes.
Creo que es una opción del wget, la verdad no estoy seguro y por cierto que investigue y aprendí a usar el wget con el propósito de descargar manga jeje saludos
Excelente tutorial, no sabia de las opciones -c y -i estan bastante utiles.
Saludos
Que bueno que te es de utilidad, saludos.
Yo creo que habría que decir que es algo más que básico, enhorabuena 😀
Comparado con el enlace que he dejado al final, si es bastante básico 😀