Guía completa para instalar y usar wget en Windows y macOS

Microsoft Windows Command Prompt tiene mucho más potencial del que imaginas. Está fuera del alcance de un único artículo cubrirlo por completo, pero una de sus utilidades más útiles es wget.
Wget es un comando gratuito que descarga archivos desde Internet sin interfaz gráfica. El problema más habitual es el error “wget: command not found”, tanto en Windows como en macOS. Esta guía completa te ayudará a resolver ese problema y a usar wget con seguridad.
¿Qué es wget y para qué sirve?
Wget es una utilidad de línea de comandos que actúa como un rastreador web ligero. Descarga recursos mediante los protocolos HTTP, HTTPS y FTP. Con wget puedes:
- Descargar archivos individuales como PDF, imágenes o HTML.
- Realizar descargas recursivas de directorios y subdirectorios.
- Clonar una página o un sitio para uso local (respetando políticas y robots.txt).
- Controlar la velocidad de descarga y la cadencia de peticiones para no sobrecargar servidores.
Definición rápida: wget —descargador de archivos vía HTTP/HTTPS/FTP desde la terminal.
Important: Usa wget con responsabilidad. Respeta los términos del servidor y robots.txt, y evita sobrecargar sitios con descargas recursivas sin permiso.
Comprobar si wget está instalado en Windows
Sigue estos pasos para verificar si wget está disponible en tu sistema Windows:
- Pulsa la tecla Windows.
- Escribe cmd y presiona Enter para abrir el Símbolo del sistema.
- En la consola, escribe:
wget -V
Si wget está instalado verás la versión y la información de compilación. Si recibes “‘wget’ no se reconoce como un comando interno o externo” o “wget: command not found”, debes instalarlo o añadirlo al PATH.
Cómo instalar wget en Windows (métodos recomendados)
Aquí tienes varias maneras fiables de instalar wget en Windows. Elige la que prefieras.
Opción A — Usar Chocolatey (recomendado para usuarios avanzados y administradores)
- Abre PowerShell como Administrador.
- Instala Chocolatey (si no lo tienes) siguiendo la documentación oficial.
- Ejecuta:
choco install wget -y
Chocolatey colocará wget en el PATH automáticamente.
Opción B — Usar Scoop (opción minimalista para desarrolladores)
- Abre PowerShell (sin necesidad de privilegios elevados si Scoop ya está configurado).
- Ejecuta:
iwr -useb get.scoop.sh | iex
scoop install wget
Scoop gestiona versiones y binarios de forma sencilla.
Opción C — Instalar manualmente (binario GNU para Windows)
- Descarga un build de wget para Windows desde una fuente confiable (por ejemplo, mirrors de GnuWin32 o sitios oficiales de paquetes binarios).
- Descomprime y copia wget.exe en una carpeta permanente, por ejemplo: C:\Program Files\wget\
- Añade la carpeta al PATH del sistema:
- Panel de control → Sistema → Configuración avanzada del sistema → Variables de entorno.
- En “Path” (Variables del sistema) pulsa Editar y añade: C:\Program Files\wget\
- Abre una nueva consola (cmd) y ejecuta:
wget -V
Nota: Evita copiar archivos directamente a C:\Windows\System32 salvo que sepas exactamente lo que haces. Preferible usar una carpeta propia y añadirla al PATH.
Opción D — Windows Subsystem for Linux (WSL)
Si usas WSL (Ubuntu, Debian…), instala wget dentro del entorno Linux:
sudo apt update
sudo apt install wget
Esto instala la versión nativa de GNU wget y te permite ejecutar scripts Linux completos.
Cómo instalar wget en macOS
En macOS lo más habitual es usar Homebrew. Si no tienes Homebrew, instálalo así:
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
Después instala wget:
brew update
brew install wget
Comprueba la instalación con:
wget -V
Alternativa: macOS incluye curl por defecto, que cubre muchas funciones de wget. Pero wget tiene opciones específicas para descargas recursivas que curl no ofrece de forma tan directa.
Sintaxis básica de wget
La sintaxis sencilla es:
wget [OPCIÓN]... [URL]...
- [OPCIÓN] indica la acción que quieres ejecutar (tiene formas cortas y largas). Ejemplo: -V o –version.
- [URL] es la dirección que deseas descargar.
Ejemplo básico:
wget https://ejemplo.com/archivo.zip
Ejemplos prácticos y comandos útiles
A continuación encontrarás comandos comunes, explicados y listos para copiar y usar.
Descargar un único archivo
wget https://example.com/robots.txt
Descargar un archivo a una carpeta específica
Reemplaza
wget -P https://example.com/sitemap.xml
Renombrar un archivo al descargar
wget -O mi-nuevo-nombre.html https://example.com/file.html
Definir el User-Agent
Algunas webs sirven contenido distinto según el agente. Ejemplo simple:
wget --user-agent="Mozilla/5.0 (compatible)" https://example.com/file.html
Ejemplo para simular Googlebot (usa con ética):
wget --user-agent="Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)" https://example.com/path
Descargar robots.txt y actualizar solo si cambia
- Mostrar cabeceras y fecha:
wget -S https://example.com/robots.txt
- Descargar solo si hay una versión nueva en el servidor:
wget -N https://example.com/robots.txt
Convertir enlaces para ver el sitio localmente
Con –convert-links puedes adaptar los enlaces al árbol local:
wget --convert-links https://example.com/path
Replicar una única página para uso local
wget -E -H -k -K -p --convert-links https://example.com/path
Explicación rápida de opciones usadas con frecuencia:
- –recursive: descarga recursivamente siguiendo enlaces.
- –page-requisites: descarga CSS, JS, imágenes necesarias.
- –adjust-extension: guarda archivos con extensión .html cuando procede.
- –span-hosts: sigue recursos en otros hosts si son necesarios.
- –wait=1: espera 1 segundo entre peticiones.
- –limit-rate=10K: limita la velocidad a 10 KB/s.
- –convert-links: convierte enlaces a rutas locales.
- –restrict-file-names=windows: adapta nombres de archivo a Windows.
- –no-clobber: no sobrescribe archivos ya existentes.
- –domains example.com: restringe la descarga al dominio indicado.
- –no-parent: no asciende al directorio padre.
Descargar múltiples URLs desde un archivo
Crea urls.txt con una URL por línea:
https://example.com/1
https://example.com/2
https://example.com/3
Luego ejecuta:
wget -i urls.txt
Nota: en el origen había -I urls.txt
, pero la opción correcta para leer URLs es -i
.
Limitar velocidad y comportamiento respetuoso
Para no sobrecargar servidores, combina pausas y límites de velocidad:
wget --wait=1 --limit-rate=10K -i urls.txt
- –wait=1: espera 1 segundo entre peticiones.
- –limit-rate=10K: limita a 10 KB/s.
Extraer un sitio completo (usa con precaución)
Comando ejemplo para descargar un sitio completo respetando límites:
wget --recursive --page-requisites --adjust-extension --span-hosts --wait=1 --limit-rate=10K --convert-links --restrict-file-names=windows --no-clobber --domains example.com --no-parent https://example.com
Antes de ejecutar una descarga recursiva ten en cuenta:
- Lee y respeta el archivo robots.txt.
- Comprueba los términos de uso del sitio.
- Ajusta –wait y –limit-rate para no agotar recursos.
- Considera contactar al administrador si necesitas una copia grande.
Comparación breve: wget vs curl vs PowerShell
- wget: ideal para descargas recursivas y replicar sitios (opciones específicas para HTML y assets).
- curl: más versátil para peticiones HTTP individuales, APIs y transferencia de datos, pero requiere scripts para replicar sitios.
- PowerShell (Invoke-WebRequest/Invoke-RestMethod): útil en Windows sin instalar nada adicional; buena integración con objetos de PowerShell.
Cuándo usar cuál:
- Automatizaciones de API: curl o PowerShell.
- Descargar múltiples enlaces o clonar páginas: wget.
- Entornos Windows sin gestores de paquetes: PowerShell es una alternativa inmediata.
Buenas prácticas y comportamiento ético
- Respeta robots.txt y políticas del servidor.
- Evita descargas recursivas masivas sin permiso.
- Limita la velocidad y añade –wait para reducir la carga en el servidor.
- Usa un User-Agent claro si automatizas (identifica tu crawler si procede).
Important: Muchos administradores bloquean agentes desconocidos o peticiones masivas. Actúa con transparencia.
Solución de problemas comunes
Error: ‘wget’ no se reconoce como comando
Causa: no está instalado o no está en la variable PATH. Solución:
- Comprueba la instalación con
where wget
(Windows) owhich wget
(macOS/WSL). - Si
where
/which
no devuelve ruta, instala wget o añade la ruta donde está wget.exe al PATH del sistema.
Error de permisos al ejecutar wget en Windows
- Abre cmd/PowerShell como Administrador si estás instalando en rutas protegidas (p. ej. Program Files).
- Prefiere instalar en carpetas de usuario y añadirlas al PATH para evitar escalado de privilegios.
Problemas con HTTPS o certificados
- wget usa certificados del sistema. En entornos con certificados corporativos puedes necesitar indicar
--no-check-certificate
(no recomendado por seguridad) o instalar el CA correspondiente.
Descargas interrumpidas
- Usa
-c
para continuar descargas interrumpidas:
wget -c https://example.com/gran-archivo.zip
Mini metodología para descargar y auditar un sitio (plantilla rápida)
- Revisar robots.txt y las políticas del sitio.
- Determinar el alcance (páginas, subdominios, assets).
- Elegir opciones de wget (wait, limit-rate, domains, no-parent).
- Ejecutar en modo limitado y revisar resultados.
- Auditar archivos descargados localmente.
- Ajustar parámetros según impacto y repetir si procede.
Lista de comprobación por rol
Desarrollador:
- ¿Necesitas recursos para pruebas locales? Usa –page-requisites.
- ¿Tienes permiso para clonar? Confírmalo.
SEO / Auditor de contenido:
- ¿Quieres ver la versión servida a Googlebot? Ajusta –user-agent.
- Usa
wget -S
para revisar cabeceras.
Administrador / DevOps:
- ¿Monitorizas descargas masivas? Controla logs y límites de red.
- Evita poner wget.exe en rutas del sistema sin control de versiones.
Investigador o archivista:
- Documenta la fecha de la descarga.
- Respeta derechos de autor y términos de uso.
Criterios de aceptación para una instalación correcta
- Ejecutar
wget -V
devuelve la versión sin errores. where wget
(Windows) owhich wget
(macOS/WSL) muestra la ruta al ejecutable.- Descarga de ejemplo funciona:
wget -O /tmp/test.html https://example.com
.
Decision tree para resolver “wget no encontrado”
flowchart TD
A[Empieza: 'wget' no encontrado] --> B{¿Estás en Windows?}
B -- Sí --> C{¿Tienes Chocolatey o Scoop?}
C -- Sí --> D[Instalar via choco/scoop]
C -- No --> E{¿Usas WSL?}
E -- Sí --> F[Instalar dentro de WSL: apt install wget]
E -- No --> G[Instalar binario y añadir al PATH]
B -- No --> H{¿Estás en macOS?}
H -- Sí --> I[Instalar via Homebrew: brew install wget]
H -- No --> J[Revisar 'which wget' y permiso de ejecución]
D --> K[Comprobar wget -V]
F --> K
G --> K
I --> K
J --> K
Glosario rápido (1 línea cada término)
- wget: herramienta de descarga por línea de comandos para HTTP/HTTPS/FTP.
- User-Agent: cadena que identifica al cliente HTTP.
- robots.txt: archivo que indica a los rastreadores las páginas permitidas o no.
- PATH: variable de entorno que determina dónde buscar ejecutables.
- WSL: Subsistema de Windows para Linux.
Preguntas frecuentes
¿Por qué aparece “wget command not found” en Windows?
Suele ocurrir porque wget no está instalado o porque la carpeta que contiene wget.exe no está incluida en la variable PATH del sistema. Instala wget o añade su ruta al PATH.
¿Qué es curl?
curl (Client URL) es una herramienta de línea de comandos para transferir datos con URL. Es muy útil para peticiones HTTP puntuales y llamadas a APIs. Está incluido por defecto en muchos sistemas.
Resumen final
wget es una herramienta potente para descargas desde la terminal. Aprende a instalarla correctamente en Windows y macOS, usa opciones como –wait y –limit-rate para no sobrecargar servidores, y respeta robots.txt y las políticas del sitio. Para automatizaciones más complejas, combina wget con scripts y gestiona las versiones con gestores de paquetes como Chocolatey, Scoop o Homebrew.
Si encuentras errores concretos, describe el comando que ejecutaste y el mensaje exacto para recibir ayuda más precisa.
Notas: si necesitas una plantilla de scripts, ejemplos adicionales de automatización o un runbook para descargas periódicas, indícalo y ampliaré con ejemplos listos para usar.
Materiales similares

Man-in-the-Prompt: cómo detectar y defenderte

Recuperar y proteger tu Gmail tras un hackeo

Instalar y usar wget en Windows y macOS

Proteger datos en dispositivos Apple en Canadá

Encontrar correo desde un canal de YouTube
