La mayoría de los usuarios descargarán archivos en su PC usando su navegador web. Sin embargo, hay un problema con este método: no es particularmente eficiente. Si necesita pausar la descarga o si ha perdido la conexión, probablemente deba iniciar la descarga nuevamente desde cero. También puede estar trabajando con Python u otro código en la línea de comandos y desea descargar directamente desde el símbolo del sistema.
Ahí es donde entran en juego herramientas como Wget. Esta herramienta de línea de comandos tiene una serie de características útiles, con soporte para descargas recursivas y reanudación de descargas que le permite descargar archivos individuales (o sitios web completos) de una sola vez.
Wget es popular en Linux y otros sistemas operativos basados en Unix, pero también está disponible para usuarios de Windows. A continuación, explicaremos cómo instalar y usar Wget para descargar cualquier contenido que desee en línea desde la línea de comandos de Windows.
Instalación de GNU Wget en Windows
Wget (de nombre, al menos) está disponible en Windows 10 y 11 a través de la terminal de PowerShell. Sin embargo, esta versión de Wget no es la misma que la herramienta GNU Wget que usaría en una PC con Linux. En cambio, esta versión es simplemente un alias para un comando de PowerShell llamado Invoke-WebRequest.
Invoke-WebRequest es similar a Wget en lo que hace, pero es una herramienta completamente diferente que es mucho más difícil de usar y comprender. En cambio, será mejor que instale Wget para Windows, una versión compilada de la misma herramienta disponible para usuarios de Linux, siguiendo los pasos a continuación.
1. Descargue el archivo de instalación de Wget para Windows desde el sitio web wget. Tendrás que hacer esto usando tu navegador web.
2. Ejecute el archivo de instalación de Wget para Windows. Una vez que el archivo de instalación de Wget haya terminado de descargarse, ejecútelo y siga las instrucciones en pantalla para completar la instalación.
3. Actualice el archivo Wget.exe (opcional). El instalador de Wget está empaquetado con una versión bastante antigua del binario Wget. Si tiene dificultades para descargar archivos debido a errores del certificado SSL, debe descargar la última versión de wget.exe para su arquitectura desde este sitio web y guárdelo en su directorio de instalación de Wget (normalmente C:Program Files (x86)GnuWin32bin). Este paso es opcional, pero muy recomendable.
4. Abra el menú Inicio, busque variables de entorno y haga clic en Abrir. Una vez finalizada la instalación, use la herramienta de búsqueda en el menú Inicio para buscar variables de entorno, luego haga clic en Abrir. Deberá hacer esto para permitirle usar el comando ‘wget’ desde la línea de comando sin hacer referencia a su ubicación cada vez que desee ejecutarlo.
5. Haga clic en Variables de entorno en la ventana Propiedades del sistema.
6. Seleccione Ruta y haga clic en Editar en Variables de sistema o de usuario.
7. Haga clic en el botón Nuevo y escriba en el directorio para el archivo binario Wget para Windows (.exe). De forma predeterminada, debería ser C:Archivos de programa (x86)GnuWin32bin.
8. Guarda tus cambios. Cuando haya terminado, haga clic en Aceptar en cada menú y salga de Propiedades del sistema.
9. Abra el menú Inicio, escriba cmd y presione Abrir. Esto abrirá una nueva ventana del símbolo del sistema. También puede usar la aplicación Terminal más nueva, siempre que cambie a usar un shell del símbolo del sistema.
10 Escribe wget –version y presiona Enter. Si Wget se instaló correctamente, debería ver la versión de GNU Wget devuelta en la ventana del símbolo del sistema.
Si desea ejecutar Wget desde un terminal de PowerShell, deberá ejecutar el archivo directamente desde su directorio de instalación (por ejemplo, C:Program Files (x86)GnuWin32binwget.exe).
Descarga de archivos con Wget
Una vez que hayas instalado GNU Wget y hayas configurado las variables de entorno para poder ejecutarlo correctamente, podrás usarlo para comenzar a descargar archivos y páginas web.
Hemos utilizado un dominio de ejemplo y una ruta de archivo en nuestros ejemplos a continuación. Deberá reemplazar esto con la ruta correcta al archivo (o archivos) que desea descargar.
- Escriba wget -h para ver una lista completa de comandos. Esto le dará la lista completa de opciones que puede usar con Wget.
wget -h
- Descargue un solo archivo usando wget
. Reemplace con la ruta a un archivo en un servidor HTTP, HTTPS o FTP. También puede hacer referencia al nombre de dominio de un sitio web oa una página web directamente para descargar esa página específica (sin ninguno de sus otros contenidos).
wget ejemplo.com
- Guardar con un nombre de archivo diferente usando -O. Usando la opción -O, podrá guardar el archivo con un nombre de archivo diferente. Por ejemplo, wget -O
, donde es el nombre de archivo que ha elegido.
wget -O ejemplo.html ejemplo.com
- Guardar en un directorio diferente usando -P. Si desea guardar en otro directorio que no sea el que está actualmente, use la opción -P. Por ejemplo, wget -P
.
wget -PC:carpeta ejemplo.com
- Use –continue o -c para reanudar archivos. Si desea reanudar una descarga parcial, use la opción -c para reanudarla, siempre que se encuentre en el mismo directorio. Por ejemplo, wget -c
.
wget -c ejemplo.com
- Descargar varios archivos en secuencia. Si desea descargar varios archivos, agregue cada URL a su comando Wget. Por ejemplo, wget
etc.
wget ejemplo.com tomshardware.com
- Descargue varios archivos usando un archivo de texto con -i. Con la opción -i, puede hacer referencia a un archivo de texto que contiene una lista de direcciones URL para descargar una gran cantidad de archivos. Asumiendo que cada URL está en una nueva línea, Wget descargará el contenido de cada URL en secuencia. Por ejemplo, wget -i
.
wget -i urls.txt
- Limite las velocidades de descarga usando –limit-rate. Si desea limitar el uso de su ancho de banda, puede limitar las velocidades de descarga con la opción –limit-rate. Por ejemplo, wget –limit-rate=1M
lo limitaría a velocidades de descarga de 1 megabyte por segundo, mientras que wget –limit-rate=10K lo limitaría a 10 kilobytes por segundo.
wget –limit-rate=10K ejemplo.com
- Use -w o –wait para establecer un período de pausa después de cada descarga. Si está descargando varios archivos, usar -w puede ayudar a difundir las solicitudes que realiza y ayudar a limitar cualquier posibilidad de que se bloqueen sus descargas. Por ejemplo, wget -w 10
para una espera de 10 segundos.
wget -w 10 ejemplo.com tomshardware.com
- Establece un límite de reintentos usando -t o –tries. Si falla una descarga, wget usará el valor -t para determinar cuántas veces lo intentará nuevamente antes de que se detenga. El valor predeterminado es 20 reintentos. Si falta el archivo o si se rechaza la conexión, este valor se ignora y Wget terminará inmediatamente.
wget -t 5 ejemplo.com
- Guarde un registro usando -o o -a. Puede guardar sus datos de registro en un archivo de texto usando -o (para crear siempre un nuevo archivo de registro) o -a (para agregar a un archivo existente). Por ejemplo, wget -o
.
- Omita los errores de SSL usando –no-check-certificate. Si tiene problemas para descargar desde un servidor web con un certificado SSL y ya actualizó su instalación de Wget, omita la verificación del certificado SSL por completo usando –no-check-certificate para permitir la descarga (en la mayoría de los casos). Solo debe hacer esto para las descargas desde ubicaciones en las que confíe completamente. Por ejemplo, wget –no-check-certificate example.com.
wget –no-check-certificate https://ejemplo.com
Asegúrese de usar el wget -h o wget –ayuda comando para ver la lista completa de opciones que están disponibles para usted. Si tiene problemas con Wget, asegúrese de limitar la cantidad de reintentos que realiza y establezca un límite de espera para cada descarga que intente.
Uso de Wget para descargas recursivas
Una de las funciones más útiles de Wget es la capacidad de descargar recursivamente. En lugar de descargar solo un archivo, intentará descargar un directorio completo de archivos relacionados.
Por ejemplo, si especifica una página web, descargará el contenido adjunto a esa página (como imágenes). Dependiendo de la profundidad recursiva que elija, también puede descargar cualquier página que esté vinculada a él, así como el contenido de esas páginas, cualquier página que esté vinculada a esas páginas, etc.
Teóricamente, Wget puede ejecutarse con un nivel de profundidad infinito, lo que significa que nunca dejará de intentar ir más lejos y más profundo con el contenido que descarga. Sin embargo, desde un punto de vista práctico, es posible que la mayoría de los servidores web bloqueen este nivel de raspado, por lo que deberá andar con cuidado.
- Escriba wget -r o wget –recursive para descargar recursivamente. Por defecto, el nivel de profundidad es cinco. Por ejemplo, wget -r
.
wget -r tomshardware.com
- Use -l o –level para establecer un nivel de profundidad personalizado. Por ejemplo, wget -r -l 10
. Use wget -r -l inf para un nivel de profundidad infinito.
wget -r -l 10 tomshardware.com
- Use -k para convertir enlaces a URL de archivos locales. Si está raspando un sitio web, Wget convertirá automáticamente cualquier enlace en HTML para apuntar a la copia sin conexión que ha descargado. Por ejemplo, wget -r -k
.
wget -r -k tomshardware.com
- Use -p o –page-requisites para descargar todo el contenido de la página. Si desea que un sitio web se descargue por completo para que todas las imágenes, CSS y otro contenido de la página estén disponibles sin conexión, use las opciones -p o –page-requisites. Por ejemplo, wget -r -p
.
wget -r -p tomshardware.com
Para obtener una lista completa de opciones, asegúrese de utilizar el wget –h dominio. También debe tener cuidado de respetar cualquier sitio web desde el que esté descargando activamente y hacer todo lo posible para limitar las cargas del servidor mediante los límites de espera, reintento y profundidad.
Si tiene dificultades con las descargas debido a errores del certificado SSL, no olvide actualizar su archivo binario Wget (wget.exe) con la última versión.