jueves, 5 de noviembre de 2009

Uso de wget en GNU/LINUX (via puntogeek.com)

Wget es una herramienta basada en software libre y disponible en entornos Unix/Linux, que permite la descarga de contenidos de la web por medio de una consola de texto.

Wget

Es considerado como uno de los comandos más potentes para realizar descargas de Internet utilizando la línea de comandos. Wget permite ciertos usos simples, como algunos más avanzados.

Pero lo interesante de este comando, es que si tenemos una descarga que no se ha completado por algún motivo, Wget automáticamente tratará de continuar la descarga desde donde había terminado anteriormente. Soporta los protocolo http, https y ftp.
Veamos que nos ofrece este comando.

El uso de Wget es sencillo. Decíamos que con el podemos realizar descargas de contenido de la web, por ejemplo un archivo alojado en un sitio web. Para realizar dicha descarga simplemente deberemos tipear lo siguiente:

wget http://www.ejemplo.com/archivo.zip

Tambien podemos indicarle a este comando que queremos realizar más de una descarga en una sola línea:

wget http://www.ejemplo.com/archivo.zip ftp://www.ejemplo.com/descargas/archivo1.zip

Otra forma también es indicarle que descargue varios archivos con una misma extensión, de la siguiente manera:

wget http://www.ejemplo.com/*.zip

O sino, podemos guardar en un archivo una lista de los archivos que queremos descargar y luego lo invocamos así:

wget -i archivo.txt

El comando lo que hará es, resolver la dirección, conectarse a la web y realizar la descarga del archivo solicitado. Un comando interesante cuando queremos realizar la descarga de un archivo pesado, como por ejemplo de alguna distro de Gnu/Linux. Y ya que hablamos de descargar distros, al ser archivos grandes, podemos limitarle al comando el ancho de banda de la descarga:

wget –limit-rate=50k ftp://ftp.distribucion.org/download/distro.iso

Hasta aquí, vimos un uso bastante sencillo del comando Wget. Pero además, uno de los usos que suele dársele a wget, es para la descarga de sitios web completos.

Por ejemplo, si tipeamos lo siguiente: wget http://www.ejemplo.com, nos descargará solo la index.html del sitio web.
Pero si a esa línea le agregamos la opción -p, de la siguiente forma: wget -p http://www.ejemplo.com, descargará todos los elementos extras necesarios, como hojas de estilo, imágenes, etc.

O también podemos agregarle la opción -r, que descargará recursivamente hasta 5 niveles del sitio. O si queremos aumentar el nivel de recursividad, con la opción -l podemos indicarle hasta un número indicado, o usar “inf” que le dará un valor de recursividad infinito.

Y si por ejemplo lo que necesitamos es estudiar un sitio estando desconectados u offline, podemos usar la opción convert-links, que convertirá todos los enlaces del sitio en locales: wget –convert-links -r http://www.ejemplo.com.

Es probable que muchos sitios web no nos dejen descargarnos todo lo hay dentro de ellos, pero podemos engañarlos haciendoles creer que somos un navegador común y corriente: wget -r -p -e robots=off -U mozilla http://www.ejemplo.com.

De todas formas, algunos administradores de sistemas les ponen límites a este tipo de descargas, pero nuevamente podemos engañarlos estableciendo ciertas pausas en la descarga de la siguiente forma: wget –random-wait -r -p -e robots=off -U mozilla http://www.ejemplo.com

Como pueden ver, Wget es un comando muy potente y con múltiples opciones de uso. Pueden incluso llamar a la ayuda de este comando que les mostrará todas las opciones de uso que tiene: wget –help. Y a descargarse toda la web!
Ciertos datos fueron obtenidos de Jamsubuntu.

0 comentarios: