Descargador de YouTube: descargas fiables a gran escala con Massive
Todas las guías

Descargador de YouTube: descargas fiables a gran escala con Massive

Servicio asíncrono de código abierto que realiza descargas de YouTube a través de una amplia red de proxies residenciales: concurrencia limitada, sesiones fijas estrictas, una ruta nueva en cada reintento y telemetría por intento.

Abrir markdown

Descargador de YouTube a gran escala

¿Por qué fallan los scripts de descarga directa cuando se utilizan a gran escala?

Si se ejecuta «yt-dlp» directamente desde YouTube, suele fallar de la misma forma cuando aumenta el volumen. Este servicio existe precisamente para evitar esos problemas.

  1. Concurrencia ilimitada. Un script poco sofisticado abre tantas conexiones como direcciones URL tiene. Esto satura tanto el grupo de proxies como YouTube, por lo que los fallos se multiplican en lugar de reducirse.
  2. Sesiones que caducan durante la descarga. El parámetro «sessionmode=flex» cambia la ruta durante una descarga larga, por lo que un vídeo de gran tamaño se interrumpe a mitad de camino y todo el intento resulta en vano.
  3. Los reintentos que repiten el fallo. Un reintento simple reutiliza la misma ruta que acaba de fallar, por lo que el segundo intento falla de la misma manera, agotando el cupo de intentos sin cambiar nada.
  4. Errores de proxy invisibles. Cuando se omite un error del lado del proxy, el trabajo simplemente «ha fallado» sin que se indique ninguna dirección IP de salida, país o ASN sobre los que actuar. No es posible distinguir una ruta errónea de un vídeo defectuoso.

Cómo funciona: el modelo operativo

Una tarea pasa de la API a un trabajador delimitado, a través de una sesión Massive estricta, a yt-dlp y, finalmente, al almacenamiento. Si se produce un error, se vuelve a iniciar el proceso por una ruta nueva.

fresh route on retry // ASYNC JOB PIPELINE POST /video Queue a job Worker Bounded concurrency Massive Strict session yt-dlp Extract + download Storage Upload + webhook
El flujo de trabajo asíncrono: POST /video → Worker → Massive (sesión estricta) → yt-dlp → Almacenamiento, con una nueva ruta en caso de reintento.

Qué le ofrece el servicio

Diseñado para garantizar descargas fiables y supervisables.

API de tareas asíncronas

Ponga en cola una tarea con POST /video y compruebe su estado con GET /video/{id}. La descarga se realiza en el worker, no en la solicitud HTTP, por lo que la respuesta se devuelve de inmediato.

queue-and-poll.sh
# Queue a download job
curl -X POST https://your-host/video \
-H "Content-Type: application/json" \
-d '{"url": "https://www.youtube.com/watch?v=dQw4w9WgXcQ"}'
# => { "id": "job_123", "state": "queued" }
# Poll it
curl https://your-host/video/job_123
# Inspect every attempt
curl https://your-host/video/job_123/attempts
# Retry a terminal failure
curl -X POST https://your-host/video/job_123/retry
  • Se establece expresamente lo siguiente: en cola, en ejecución, en proceso de carga, completado, fallido.
  • Visibilidad por intento: GET /video/{id}/attempts, y vuelva a intentar una operación fallida de forma definitiva mediante POST /video/{id}/retry.

Concurrencia limitada y períodos de vigencia

Un límite de concurrencia por trabajador mantiene las conexiones en un nivel que su proxy y las tasas de éxito de YouTube puedan soportar, y los «leases» de los trabajadores realizan un seguimiento de los trabajos en curso.

  • Elija el límite máximo a partir de las tasas de éxito observadas. 30 es un valor útil para las pruebas de carga.
  • Contratos de alquiler con cobertura en caso de accidente. Un proceso que se ha bloqueado deja un contrato de alquiler pendiente; un contrato de alquiler caducado se recupera y se vuelve a poner en cola al reiniciarse el sistema.

Sesiones «Strict Massive»

Cada intento recibe un identificador de sesión único con sessionmode=strict. Un error en la ruta invalida la sesión, en lugar de que esta persista tras los fallos.

Integración de la API de Python de yt-dlp

El servicio controla yt-dlp a través de su API de Python, por lo que las credenciales del proxy nunca pasan por la línea de comandos de un proceso secundario, un archivo fuente ni el historial del shell.

Extracción moderna de YouTube

Un entorno de ejecución de JavaScript de Deno y unos reproductores de YouTube configurables se encargan de la extracción de reproductores modernos.

.env
YTDLP_JS_RUNTIME=deno
YTDLP_YOUTUBE_PLAYER_CLIENTS=web,web_safari,tv

Almacenamiento local o en S3

Guarde los resultados en el sistema de archivos local durante el desarrollo, o en buckets de S3 y compatibles con S3 cuando se disponga de la dependencia y las credenciales opcionales.

Telemetría por intento

Cada intento registra su fase, la hora, el recuento de bytes, los clientes de jugador seleccionados y el código de error. Las credenciales nunca se incluyen.

  • Metadatos de salida Massive. Con la función de captura activada, los registros incluyen la dirección IP de salida, el país, la zona horaria y el ASN, lo que le permite distinguir una ruta defectuosa de un vídeo de mala calidad.

Webhooks de finalización firmados

Configure una URL de webhook en una tarea para recibir notificaciones en la terminal. Si se ha configurado un secreto de firma, las entregas incluirán un encabezado de firma HMAC-SHA256.


¿Por qué Massive?: rutas residenciales reales, no direcciones IP de centros de datos

El servicio redirige todas las conexiones a través de una red Massive de proxies residenciales, de modo que YouTube detecta tráfico local orgánico procedente de dispositivos reales de los usuarios.

Sistema métricoValor
Respuesta<600 ms
Éxito99,8 %
Tiempo de actividad99,9 %
Países195+

Apto para empresas.

  • Auditado según la norma SOC 2 Tipo 1. Auditoría independiente de los controles de seguridad y la integridad operativa.
  • Cumple con el RGPD y la CCPA. Cumplimiento íntegro de la normativa internacional en materia de protección de datos.
  • Certificado por AppEsteem. Revisión independiente de las prácticas relacionadas con el SDK y los mecanismos de consentimiento.
  • Acuerdo de nivel de servicio (SLA) con un tiempo de actividad del 99,9 %. Con el respaldo de una supervisión las 24 horas del día, los 7 días de la semana, y una infraestructura específica.
  • Ingenieros que atienden a ingenieros. Un gestor de cuentas dedicado y asistencia técnica por parte del equipo que lo ha desarrollado.
  • Registro de auditoría completo. Todos los dispositivos se han dado de alta, todas las solicitudes se han registrado. Supera la revisión de seguridad.

Sin necesidad de registrarse ni de pasar por ningún proceso de verificación. Introduzca sus propias credenciales de Massive Residential y podrá empezar a descargar en cuestión de minutos. Cuando su volumen supere el de una prueba, solicite una llamada y le ayudaremos a elegir el plan más adecuado.

Clónelo. Ejecútelo. Láncelo.