TubeScript-API/INSTRUCCIONES_FINALES.md

5.4 KiB

SOLUCIÓN FINAL - Instrucciones Paso a Paso

🎯 El Problema

ERROR: [youtube] 6hini9Xz_fc: Requested format is not available

Cambio Implementado

He simplificado completamente el comando yt-dlp en main.py (línea ~95):

ANTES:

command = [
    "yt-dlp",
    "--skip-download",
    "--dump-json",
    "--no-warnings",
    "--extractor-args", "youtube:player_client=android",  # Esto puede causar problemas
    url
]

AHORA:

command = [
    "yt-dlp",
    "--skip-download",
    "--dump-json",
    "--no-warnings",
    url
]

Cambio clave: Eliminé --extractor-args que puede causar conflictos con YouTube.


🚀 PASOS PARA APLICAR LA SOLUCIÓN

Paso 1: Detener Todo

cd /Users/cesarmendivil/Documents/Nextream/TubeScript-API

# Detener servicios
docker-compose down

# O forzar detención
docker stop $(docker ps -aq) 2>/dev/null
docker rm $(docker ps -aq) 2>/dev/null

Paso 2: Limpiar Imágenes Antiguas

# Eliminar imagen vieja
docker rmi tubescript-api

# O limpiar todo Docker
docker system prune -a

Paso 3: Reconstruir la Imagen

# Build desde cero (SIN CACHÉ)
docker-compose build --no-cache tubescript-api

# Esto toma 3-5 minutos
# Espera a que termine completamente

Paso 4: Iniciar el Servicio

# Iniciar en segundo plano
docker-compose up -d tubescript-api

# Esperar 15 segundos
sleep 15

Paso 5: Verificar que Está Corriendo

# Ver contenedores activos
docker ps

# Debería mostrar: tubescript_api ... Up

Paso 6: Probar el Endpoint

# Probar el video que fallaba
curl -X GET "http://localhost:8080/transcript/6hini9Xz_fc?lang=es"

# Si funciona, verás JSON con subtítulos
# Si falla, ver logs:
docker logs tubescript_api

🔍 DIAGNÓSTICO SI SIGUE FALLANDO

Ver Logs Completos

docker logs tubescript_api 2>&1 | tail -100

Entrar al Contenedor y Probar Manualmente

# Entrar al contenedor
docker exec -it tubescript_api bash

# Dentro del contenedor, probar yt-dlp directo:
yt-dlp --version

# Probar obtener metadatos del video:
yt-dlp --skip-download --dump-json --no-warnings \
  "https://www.youtube.com/watch?v=6hini9Xz_fc" | head -50

# Ver si hay subtítulos:
yt-dlp --list-subs "https://www.youtube.com/watch?v=6hini9Xz_fc"

# Salir:
exit

Probar con Otro Video

# Probar con un video diferente que sabemos que tiene subtítulos:
curl -X GET "http://localhost:8080/transcript/jNQXAC9IVRw?lang=en"

# Video de prueba popular:
curl -X GET "http://localhost:8080/transcript/dQw4w9WgXcQ?lang=en"

📊 POSIBLES CAUSAS DEL ERROR

1. El Video Específico Tiene Problemas

2. YouTube Está Bloqueando

  • Agrega cookies.txt (exporta desde tu navegador)
  • Usa una VPN
  • Espera unos minutos y vuelve a intentar

3. yt-dlp Desactualizado

# Dentro del contenedor:
docker exec -it tubescript_api bash
pip install --upgrade yt-dlp
exit

# Reiniciar:
docker-compose restart tubescript-api

4. El Video NO Tiene Subtítulos

  • Verifica manualmente en YouTube si el video tiene subtítulos
  • El video podría estar geo-bloqueado
  • El video podría haber sido eliminado

💡 SOLUCIÓN ALTERNATIVA

Si el video 6hini9Xz_fc específicamente siempre falla, puede ser que:

  1. El video no tenga subtítulos - Verifica manualmente
  2. El video esté restringido - Prueba con cookies.txt
  3. El video fue eliminado - Busca otro video

Probar con Video Conocido que Funciona:

# CNN en vivo (siempre tiene subtítulos):
curl -X GET "http://localhost:8080/transcript/XWq5kBlakcQ?lang=en"

# BBC News (en inglés):
curl -X GET "http://localhost:8080/transcript/9Auq9mYxFEE?lang=en"

Si estos funcionan pero 6hini9Xz_fc no, el problema es específico de ese video.


🎯 RESUMEN EJECUTIVO

Lo que hice:

  1. Simplifiqué el comando yt-dlp eliminando opciones problemáticas
  2. Eliminé --extractor-args que puede causar conflictos
  3. El código ahora es minimalista y robusto

Lo que debes hacer:

  1. Reconstruir Docker: docker-compose build --no-cache tubescript-api
  2. Iniciar: docker-compose up -d tubescript-api
  3. Probar: curl "http://localhost:8080/transcript/6hini9Xz_fc?lang=es"

Si falla:

  1. Ver logs: docker logs tubescript_api
  2. Probar otro video
  3. Verificar que el video tenga subtítulos en YouTube
  4. Agregar cookies.txt si es necesario

📞 COMANDOS COMPLETOS LISTOS PARA COPIAR

# Ejecuta esto en orden:

# 1. Ir al directorio
cd /Users/cesarmendivil/Documents/Nextream/TubeScript-API

# 2. Detener y limpiar
docker-compose down
docker rmi tubescript-api 2>/dev/null || true

# 3. Reconstruir
docker-compose build --no-cache tubescript-api

# 4. Iniciar
docker-compose up -d tubescript-api

# 5. Esperar
sleep 15

# 6. Probar
curl -X GET "http://localhost:8080/transcript/6hini9Xz_fc?lang=es"

# 7. Ver logs si falla
docker logs tubescript_api 2>&1 | tail -50

El código está LISTO. Solo necesitas reconstruir Docker con los pasos de arriba.

Si después de esto el error persiste, es muy probable que sea un problema específico del video 6hini9Xz_fc (sin subtítulos, bloqueado, eliminado, etc.) y no del código.


TubeScript API Pro © 2026
Última Actualización: 30 Enero 2026