viernes, 21 de noviembre de 2025

⭐ DW ULTIMATE 2025-2026: Tu comando definitivo para descargar vídeos de Instagram, YouTube, TikTok y cualquier red social

DW ULTIMATE · TUTORIAL COMPLETO 2025-2026

Cómo descargar vídeos de cualquier red social en macOS con DW ULTIMATE

Instagram y otras redes sociales como YouTube, TikTok o X han endurecido sus medidas de seguridad y muchas veces no permiten descargar contenido sin estar logueado. En esta guía vas a crear DW ULTIMATE, un comando llamado dw que:

  • Actualiza automáticamente las cookies reales de Safari (especialmente útil para tu sesión de Instagram).
  • Te pide o confirma la URL mediante una ventana de macOS.
  • Descarga el vídeo de la red social que elijas con yt-dlp usando esas cookies y ffmpeg para las fusiones de audio/vídeo.
  • Muestra una notificación “Descarga completada.” y reproduce un sonido al terminar.
📝 Antes de empezar…

Te recomiendo leer el tutorial completo con calma, especialmente si es la primera vez que instalas herramientas en tu Mac desde el Terminal.

Todos los pasos que vas a realizar son seguros, no dañan tu ordenador y utilizan componentes fiables y ampliamente usados como Homebrew, Python, yt-dlp, ffmpeg y comandos estándar de macOS. No vas a modificar nada crítico del sistema: simplemente añadirás utilidades que usan millones de personas a diario.

Si sigues los pasos tal y como están explicados, podrás completar el proceso sin problemas. Tómate tu tiempo, revisa cada bloque antes de copiarlo y verás que crear tu propio descargador DW ULTIMATE es mucho más sencillo de lo que parece. 😊💪🏼

🧩 PASO 1 – Comprobar si Python 3 está instalado

Abre el Terminal y escribe:

 TERMINAL MAC
python3 --version

Si ves algo como: Python 3.12.0 o similar OK · Pasa al PASO 3

Si aparece “command not found” o error Instala Python · PASO 2

🧩 PASO 2 – ONE-SHOT: Instalar Homebrew + Python 3 automáticamente

Si no tienes Python 3, puedes instalar todo de una vez (Homebrew + Python 3) con este bloque. Solo tienes que copiar y pegarlo en el Terminal:

 TERMINAL MAC
# Instalar Homebrew si no existe
if ! command -v brew >/dev/null 2>&1; then
  echo "Instalando Homebrew..."
  /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
  eval "$(/opt/homebrew/bin/brew shellenv)"
else
  echo "Homebrew ya está instalado."
fi

# Asegurar que Brew funciona en esta sesión
eval "$(/opt/homebrew/bin/brew shellenv)"

# Instalar Python 3
echo "Instalando Python 3..."
brew install python

# Verificar instalación
echo "Python instalado:"
python3 --version

Al terminar, vuelve a comprobar:

 TERMINAL MAC
python3 --version

Si devuelve una versión de Python 3, puedes continuar.

🧩 PASO 3 – Instalar la librería browser-cookie3

Esta librería es la que permitirá leer las cookies cifradas de Safari (incluida tu sesión de Instagram y otras webs que requieran login).

Instálala con:

 TERMINAL MAC
python3 -m pip install --user --break-system-packages browser-cookie3

Puedes comprobar la instalación con:

 TERMINAL MAC
python3 -m pip show browser-cookie3
🧩 PASO 4 – Instalar yt-dlp y ffmpeg

yt-dlp es el motor de descargas, y ffmpeg se encarga de fusionar audio y vídeo de forma óptima. Lo más sencillo es instalarlos con Homebrew.

Opción A – Instalación directa recomendada

Comandos básicos (recomendados para la mayoría de usuarios):

 TERMINAL MAC
brew install yt-dlp
brew install ffmpeg

Opción B – Solo instalar si faltan

Si prefieres comprobar primero, puedes usar algo como:

 TERMINAL MAC
# Instalar yt-dlp solo si no está
if ! command -v yt-dlp >/dev/null 2>&1; then
  brew install yt-dlp
fi

# Instalar ffmpeg solo si no está
if ! command -v ffmpeg >/dev/null 2>&1; then
  brew install ffmpeg
fi

Comprueba que yt-dlp responde correctamente:

 TERMINAL MAC
yt-dlp --version
🧩 PASO 5 – ONE-SHOT: Crear ~/bin y añadirlo al PATH

Ahora vamos a crear la carpeta personal de scripts (~/bin) y añadirla al PATH de zsh en un solo paso.

Copia y pega este bloque:

 TERMINAL MAC
# Crear ~/bin si no existe
mkdir -p "$HOME/bin"

# Crear ~/.zshrc si no existe
touch "$HOME/.zshrc"

# Añadir ~/bin al PATH solo si aún no está
if ! grep -q 'export PATH="$HOME/bin:$PATH"' "$HOME/.zshrc"; then
  echo 'export PATH="$HOME/bin:$PATH"' >> "$HOME/.zshrc"
  echo "Añadido ~/bin al PATH."
else
  echo "~/bin ya estaba en el PATH."
fi

# Recargar configuración de la shell
source "$HOME/.zshrc"

echo "PATH actualizado correctamente."

A partir de aquí, cualquier script que guardes dentro de ~/bin se podrá ejecutar como un comando más.

🧩 PASO 6 – Crear el script export-dwUltimate-cookies-safari

Este script exporta tus cookies de Instagram desde Safari y las guarda en ~/instagram_cookies/cookies.txt en formato compatible con yt-dlp. Está pensado principalmente para Instagram, pero la estructura se adapta a otras webs que requieran autenticación.

Copia y pega este bloque completo:

 TERMINAL MAC
cat > ~/bin/export-dwUltimate-cookies-safari << 'EOF'
#!/bin/bash
# Exporta cookies de Instagram desde Safari a formato Netscape para yt-dlp
# DW ULTIMATE (2025-2026)

set -e

DEST_DIR="$HOME/instagram_cookies"
DEST_FILE="$DEST_DIR/cookies.txt"

mkdir -p "$DEST_DIR"

# 1. Comprobar python3
if ! command -v python3 >/dev/null 2>&1; then
  echo "ERROR: python3 no está instalado."
  exit 1
fi

# 2. Comprobar que browser-cookie3 existe
python3 - << 'PYEOF'
try:
    import browser_cookie3
except ImportError:
    import sys
    print("ERROR: Falta el módulo 'browser-cookie3'.", file=sys.stderr)
    print("Instálalo con:", file=sys.stderr)
    print("python3 -m pip install --user --break-system-packages browser-cookie3", file=sys.stderr)
    sys.exit(1)
PYEOF

# 3. Volcar cookies de Safari → cookies.txt
python3 << 'PYEOF'
import browser_cookie3
import os, time

cj = browser_cookie3.safari(domain_name="instagram.com")

dest_dir = os.path.expanduser("~/instagram_cookies")
os.makedirs(dest_dir, exist_ok=True)
dest_file = os.path.join(dest_dir, "cookies.txt")

with open(dest_file, "w", encoding="utf-8") as f:
    f.write("# Netscape HTTP Cookie File\n")
    f.write("# Exported from Safari %s\n" % time.ctime())
    for c in cj:
        domain = c.domain
        flag = "TRUE" if domain.startswith(".") else "FALSE"
        path = c.path or "/"
        secure = "TRUE" if c.secure else "FALSE"
        expiry = str(int(c.expires)) if c.expires else "0"
        name = c.name
        value = c.value
        f.write("\t".join([domain, flag, path, secure, expiry, name, value]) + "\n")
PYEOF

osascript -e 'display notification "Cookies de Instagram (Safari) actualizadas" with title "DW ULTIMATE"'
echo "Cookies exportadas a: $DEST_FILE"
EOF

chmod +x ~/bin/export-dwUltimate-cookies-safari
🧩 PASO 7 – Exportar las cookies de Safari

Asegúrate de que estás logueado en Instagram en Safari y de que has abierto la web al menos una vez (para que existan cookies).

Después, ejecuta:

 TERMINAL MAC
export-dwUltimate-cookies-safari

Si todo va bien, verás un mensaje indicando la ruta de cookies.txt y una notificación de macOS con el título “DW ULTIMATE”.

Puedes comprobar el archivo con:

 TERMINAL MAC
ls -l ~/instagram_cookies
head ~/instagram_cookies/cookies.txt
🧩 PASO 8 – Probar una descarga con yt-dlp y cookies

⭐ Este paso es opcional. Puedes saltarlo si quieres ir directamente al comando DW ULTIMATE.

Antes de crear el comando definitivo, prueba que la combinación yt-dlp + cookies funciona correctamente. Puedes empezar con un Reel de Instagram o con cualquier otro vídeo de red social.

Ejemplo de prueba con un Reel:

 TERMINAL MAC
yt-dlp --cookies ~/instagram_cookies/cookies.txt "https://www.instagram.com/reel/TU_ID_AQUI/"

Si ves que descarga el vídeo y fusiona audio/vídeo sin errores de “login required”, estás listo para el comando final.

🧩 PASO 9 – Crear el comando definitivo dw (DW ULTIMATE)

Ahora vamos a crear el script Universal-Downloader-Ultimate, que:

  • Actualiza las cookies de Safari para Instagram.
  • Muestra una ventana para pegar o confirmar la URL.
  • Descarga el vídeo en la carpeta Descargas con yt-dlp usando tus cookies cuando son necesarias.
  • Muestra una notificación “Descarga completada.” y reproduce un sonido al terminar.

9.1 – Crear el script Universal-Downloader-Ultimate

Copia y pega este bloque completo en el Terminal:

 TERMINAL MAC
cat > ~/bin/Universal-Downloader-Ultimate << 'EOF'
#!/bin/bash
# DW ULTIMATE – Descargador universal con cookies de Safari (Instagram, etc.)

set -e

COOKIES_TXT="$HOME/instagram_cookies/cookies.txt"

# 1. Comprobar dependencias básicas
if ! command -v yt-dlp >/dev/null 2>&1; then
  echo "ERROR: 'yt-dlp' no está instalado. Instálalo con: brew install yt-dlp"
  exit 1
fi

if ! command -v export-dwUltimate-cookies-safari >/dev/null 2>&1; then
  echo "ERROR: No encuentro el comando 'export-dwUltimate-cookies-safari'."
  echo "Asegúrate de haber seguido el tutorial y creado ese script."
  exit 1
fi

if ! command -v osascript >/dev/null 2>&1; then
  echo "ERROR: 'osascript' no está disponible. Este script está pensado para macOS."
  exit 1
fi

# 2. Actualizar cookies de Safari (Instagram)
echo "Actualizando cookies de Safari (Instagram)..."
if ! export-dwUltimate-cookies-safari; then
  echo "ERROR: No se han podido exportar las cookies."
  exit 1
fi

if [ ! -s "$COOKIES_TXT" ]; then
  echo "ERROR: No se ha generado un cookies.txt válido en $COOKIES_TXT"
  exit 1
fi

# 3. Pedir/confirmar URL con una ventana de macOS
URL=$(
osascript << 'APPLESCRIPT'
set clipboardText to ""
try
  set clipboardText to the clipboard as text
end try

tell application "System Events"
  set userResponse to display dialog "Pega o confirma la URL que quieres descargar:" default answer clipboardText buttons {"Cancelar", "Descargar"} default button "Descargar" with title "DW ULTIMATE"
end tell

if button returned of userResponse is "Descargar" then
  return text returned of userResponse
else
  return ""
end if
APPLESCRIPT
)

# 4. Cancelar si no hay URL
if [ -z "$URL" ]; then
  echo "Operación cancelada por el usuario."
  exit 0
fi

echo "URL seleccionada:"
echo "  $URL"
echo

# 5. Carpeta de destino
DEST_DIR="$HOME/Downloads"
mkdir -p "$DEST_DIR"

# 6. Descargar con yt-dlp usando cookies
echo "Descargando con yt-dlp en: $DEST_DIR"
yt-dlp \
  --cookies "$COOKIES_TXT" \
  -f "bv*+ba/b" \
  -o "$DEST_DIR/%(uploader)s - %(title)s [%(id)s].%(ext)s" \
  "$URL"

EXIT_CODE=$?

if [ $EXIT_CODE -eq 0 ]; then
  # 7. Notificación y sonido de éxito
  osascript -e 'display notification "Descarga completada. ¡Hecho desde Sevilla con ❤️!" with title "DW ULTIMATE" subtitle "Vídeo guardado en Descargas"'
  afplay /System/Library/Sounds/Glass.aiff >/dev/null 2>&1 || true
echo
echo
echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"
echo "   ✅  DESCARGA EXITOSA"
echo "   📁  Guardado en: ~/Downloads"
echo "   ❤️  Hecho desde Sevilla con amor"
echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"
else
  # 8. Notificación de error
  osascript -e "display notification \"Ha ocurrido un error durante la descarga\" with title \"DW ULTIMATE\" subtitle \"Código de salida: $EXIT_CODE\""
  echo "❌ Ha ocurrido un error durante la descarga (código $EXIT_CODE)."
fi
EOF

chmod +x ~/bin/Universal-Downloader-Ultimate
echo "Script creado: ~/bin/Universal-Downloader-Ultimate"

9.2 – Crear el alias corto dw

Por último, crea el alias para poder usar el comando simplemente escribiendo dw:

 TERMINAL MAC
echo 'alias dw="Universal-Downloader-Ultimate"' >> ~/.zshrc
source ~/.zshrc

9.3 – Usar DW ULTIMATE

  1. Abre Safari y asegúrate de que estás logueado en la red social correspondiente si lo requiere (por ejemplo, Instagram).
  2. Copia la URL del vídeo que quieres descargar, ya sea de Instagram, YouTube, TikTok u otra plataforma.
  3. Abre el Terminal y escribe:
 TERMINAL MAC
dw

Aparecerá una ventana con la URL del portapapeles. Puedes editarla si quieres, pulsar “Descargar” y el sistema se encargará del resto: actualizar cookies, descargar el vídeo y avisarte con la notificación “Descarga completada.”.

❓ Preguntas frecuentes sobre DW ULTIMATE

¿DW ULTIMATE es seguro para mi Mac?

Sí. Todos los pasos del tutorial utilizan herramientas seguras y ampliamente usadas: Homebrew, Python, yt-dlp y ffmpeg. No modifican el sistema ni requieren permisos especiales; simplemente añaden utilidades para automatizar descargas.

¿Puedo descargar vídeos de cualquier red social?

Sí. yt-dlp es compatible con Instagram, YouTube, TikTok, X (Twitter), Facebook, Reddit, Twitch y cientos de plataformas más. DW ULTIMATE funciona con cualquier URL que yt-dlp soporte.

¿Necesito iniciar sesión en Instagram para usar DW ULTIMATE?

Solo si quieres descargar contenido protegido por login, como Reels privados o páginas que requieren sesión. El script usa tus cookies reales de Safari para autenticarse automáticamente.

¿Es obligatorio completar todos los pasos del tutorial?

No. Algunos pasos son opcionales, como la prueba del PASO 8. Sin embargo, es recomendable seguirlos en orden si es la primera vez que instalas herramientas de Terminal.

¿Necesito saber programar para usar DW ULTIMATE?

No. El tutorial está diseñado para que cualquier usuario pueda seguirlo simplemente copiando y pegando los comandos. No es necesario tener experiencia previa.

¿Puedo modificar o ampliar DW ULTIMATE?

Sí. Puedes personalizar el comando, añadir nuevos formatos de descarga, cambiar el nombre de los archivos, modificar la ventana emergente o incluso convertirlo en una app de macOS.

No hay comentarios:

Publicar un comentario