Cómo instalar y usar wget en Mac

Un botón de descarga.

Hay muchas maneras de descargar recursos de la web. Aparte de tu navegador, también puedes usar una herramienta como wget para descargar recursos de la web mientras haces otra cosa. En este artículo, te mostramos cómo descargar y usar wget en Mac.

También lee: Cómo usar Wget para descargar sitios web en tu PC

¿Qué es wget (y para qué se usa)?

Para los que no lo saben, wget es una utilidad de línea de comandos no interactiva de código abierto que te ayuda a descargar recursos de una URL específica. Debido a que es no interactivo, wget puede funcionar en segundo plano o incluso antes de que inicies sesión.

Es un proyecto del equipo de GNU, y es excelente si tienes una conexión a Internet deficiente. Esto significa que es robusto en condiciones no óptimas.

Una vez que instales wget, ejecutarás comandos y especificarás un destino para tus archivos. Te mostramos cómo hacerlo a continuación.

Cómo instalar wget en Mac

Antes de instalar wget, necesitas un gestor de paquetes. Aunque wget no viene incluido con macOS, puedes descargarlo e instalarlo usando Homebrew, el mejor gestor de paquetes para Mac disponible.

1. Descarga e instala Homebrew

Para instalar Homebrew, primero abre una ventana de Terminal y ejecuta el siguiente comando:

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

Esto utiliza el comando curl para descargar archivos que vienen con la instalación de Ruby preinstalada en macOS.

También lee: Cómo usar cURL para la transferencia de datos en la línea de comandos y más

Una vez que presiones Enter para ejecutar el comando, el instalador te dará detalles explícitos sobre lo que sucederá.

Instalando Homebrew.

Después de que confirmes, el instalador se ejecutará.

2. Instala wget desde la línea de comandos

A continuación, queremos usar Homebrew para instalar wget. Desde la Terminal nuevamente, ejecuta:

brew install wget

Instalando wget.

El instalador te dará actualizaciones de progreso en vivo, y hay poco que necesites hacer aquí. El proceso es sencillo y automatizado. Sin embargo, si ya tienes Homebrew instalado, asegúrate de ejecutar brew update para obtener las copias más recientes de todas tus fórmulas.

Una vez que veas un nuevo aviso en tu Terminal, estás listo para usar wget en Mac para descargar recursos.

También lee: Cómo ejecutar un script de Python en Mac

Cómo usar wget para descargar recursos web

Para descargar un recurso remoto de una URL usando wget, querrás usar la siguiente estructura:

wget -O path/to/local.copy http://example.com/url/to/download.html

Eso guardará el archivo especificado en la URL en la ubicación especificada en tu máquina.

Usando wget para descargar un archivo.

Si excluyes la bandera -O, tu ubicación de descarga será el directorio de trabajo actual.

Descargando un archivo en el directorio de trabajo actual.

Por ejemplo, queremos descargar una página web en la carpeta Descargas:

wget -O /Users/[tu-nombre-de-usuario]/Downloads/status.html https://www.w3.org/Status.html

Sin embargo, para hacer lo mismo sin la bandera -O, necesitaríamos cambiar el directorio (cd downloads) antes de ejecutar wget:

wget /Users/[tu-nombre-de-usuario]/Downloads/status.html https://www.w3.org/Status.html

Obtendrás todos los detalles sobre el progreso de la descarga, aunque, con lo rápido que es wget, esta información es más un resumen de la descarga que actualizaciones en tiempo real.

Cómo descargar un directorio recursivo

Para descargar un árbol de directorios completo con wget, necesitas usar las banderas -r / --recursive y -np / --no-parent:

wget -e robots=off -r -np https://www.w3.org/History/19921103-hypertext/hypertext/

Esto hará que wget siga cualquier enlace encontrado en los documentos dentro del directorio especificado. Desde allí, realizará una descarga recursiva de toda la ruta URL especificada.

Además, nota el comando -e robots=off. Esto ignora las restricciones en el archivo robots.txt. En general, es una buena idea desactivar robots.txt para evitar descargas abreviadas.

Usando banderas adicionales con wget

Encontrarás que wget es una herramienta flexible, ya que utiliza una serie de otras banderas adicionales. Esto es excelente si tienes requisitos específicos para tu descarga.

Echemos un vistazo a dos áreas en nuestro enfoque sobre el control del proceso de descarga y la creación de registros.

Controla cómo wget descargará recursos

Hay muchas banderas para ayudarte a configurar el proceso de descarga. Aquí hay solo algunas de las más útiles:

  • wget -X /absolute/path/to/directory excluirá un directorio específico en el servidor remoto.
  • wget -nH elimina los directorios de “nombre de host”. En otras palabras, omite el nombre de dominio principal. Por ejemplo, wget omitiría la carpeta www.w3.org en el ejemplo anterior y comenzaría con el directorio History en su lugar.
  • wget --cut-dirs=# omite el número especificado de directorios en la URL antes de comenzar a descargar archivos. Por ejemplo, -nH --cut-dirs=1 cambiaría la ruta especificada de “ftp.xemacs.org/pub/xemacs/“ a simplemente “/xemacs/“ y reduciría el número de directorios padre vacíos en la descarga local.
  • wget -R index.html / wget --reject index.html omitirán cualquier archivo que coincida con el nombre de archivo especificado. En este caso, excluirá todos los archivos index. El asterisco () es un comodín, como “.png”. Esto omitiría todos los archivos con la extensión PNG.
  • wget -i file especifica URLs de destino desde un archivo de entrada. Este archivo de entrada debe estar en formato HTML, o necesitarás usar la bandera --force-html para analizar el HTML.
  • wget -nc / wget --no-clobber no sobrescribirá archivos que ya existen en el destino.
  • wget -c / wget --continue continuará las descargas de archivos parcialmente descargados.
  • wget -t 10 intentará descargar el recurso hasta 10 veces antes de fallar.

wget puede hacer más que controlar el proceso de descarga, ya que también puedes crear registros para futuras referencias.

Ajusta el nivel de registro

También puedes considerar las siguientes banderas como una forma parcial de controlar la salida que recibes al usar wget.

  • wget -d habilita la salida de depuración.
  • wget -o path/to/log.txt habilita la salida de registro en el directorio especificado en lugar de mostrar el registro en la salida estándar.
  • wget -q apaga toda la salida de wget, incluidos los mensajes de error.
  • wget -v habilita explícitamente la salida detallada predeterminada de wget.
  • wget --no-verbose apaga los mensajes de registro pero muestra mensajes de error.

A menudo querrás saber qué está sucediendo durante una descarga, por lo que puede que no uses estas banderas tanto como otras. Sin embargo, si tienes un gran lote de descargas y quieres asegurarte de poder solucionar cualquier problema, tener un registro o la falta de salida es un enfoque válido.

También lee: Cómo agregar y eliminar Kexts de macOS

Conclusión

Aunque podrías usar tu navegador u otra GUI para descargar páginas web y otros recursos, puedes ahorrar tiempo con la línea de comandos. Una herramienta como wget es poderosa, más que tu navegador, y también es rápida. Para una descripción completa de las capacidades de wget, puedes revisar la página del manual de GNU de wget.

Si encuentras que wget no está funcionando para ti, podría ser hora de diagnosticar un problema con tu conexión Wi-Fi. ¿Usarás wget en Mac para descargar recursos web? ¡Comparte tus pensamientos en la sección de comentarios a continuación!