npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2025 – Pkg Stats / Ryan Hefner

@luxyteam/ytdl

v1.0.5-beta

Published

Modulo para descargar audio o videos de youtube

Downloads

171

Readme

# @luxyteam/ytdl

Este es un módulo de Node.js para descargar audio y video de YouTube utilizando `yt-dlp`. Admite plataformas Android, Linux y Windows, y está diseñado para ser fácil de usar y configurar.

## Instalación

1. **Clona el repositorio o descarga el paquete:**

   Si prefieres usarlo como una dependencia local, puedes instalarlo directamente desde el directorio:

   ```bash
   npm install @luxyteam/ytdl --save
  1. Instalación de dependencias:

    Instala las dependencias necesarias para el proyecto:

    npm install
  2. Dependencias externas:

    Este proyecto requiere las siguientes dependencias:

    • node-fetch: Para realizar solicitudes HTTP.
    • path: Para manejar rutas de archivos.

    Estas dependencias se instalarán automáticamente al ejecutar npm install.

Uso

1. Descargar audio en formato MP3

Para descargar el audio de un video de YouTube, utiliza el siguiente código:

import { ytmp3 } from "@luxyteam/ytdl";

(async () => {
    const url = "https://youtu.be/3jf6xOg6e7Y?si=P9Lc9WBqo8scbKzB"; // Reemplaza con la URL de tu video
    const audio = await ytmp3(url);

    console.log("Descarga de audio completada:", audio);
})();

Este comando descargará el audio del video en formato m4a. Puedes cambiar el formato modificando el valor 'm4a' en el código de la función generateRandomName().

2. Descargar video en formato MP4

Para descargar un video de YouTube en formato MP4, usa el siguiente código:

import { ytmp4 } from "@luxyteam/ytdl";

(async () => {
    const url = "https://youtu.be/3jf6xOg6e7Y?si=P9Lc9WBqo8scbKzB"; // Reemplaza con la URL de tu video
    const video = await ytmp4(url);

    console.log("Descarga de video completada:", video);
})();

Esto descargará el video en el formato mp4.

3. Buscar videos de YouTube

Para buscar videos en YouTube, puedes utilizar el siguiente código:

import { yts } from "@luxyteam/ytdl";

(async () => {
    const query = "Ma Meilleure Ennemie"; // Reemplaza con tu consulta
    const results = await yts(query);

    console.log("Resultados de búsqueda:", results);
})();

Esto devolverá una lista de videos relacionados con la consulta proporcionada.

Funcionalidades

  • ytmp3(url): Descarga el audio de un video de YouTube en formato m4a.
  • ytmp4(url): Descarga un video de YouTube en formato mp4.
  • yts(query): Realiza una búsqueda en YouTube basada en una consulta de texto y devuelve los resultados.

Requisitos del sistema

  • Plataformas compatibles: Android, Linux, Windows.
  • Dependencias:
    • node-fetch: Para hacer solicitudes HTTP.
    • path: Para manejar rutas de archivos.
    • yt-dlp debe estar disponible y ser compatible con la plataforma.

Configuración

  1. Borrar la caché de cookies: Si las cookies no están configuradas correctamente, el sistema intentará automáticamente cargar cookies válidas desde el archivo cookies.json. Si no se encuentran cookies válidas, se lanzará un error.

  2. Actualizar binarios: El script puede actualizar automáticamente los binarios necesarios desde GitHub, asegurándose de que la versión más reciente esté disponible para su uso.

  3. Archivos temporales: El proyecto utilizará directorios temporales (temp y bin) para almacenar archivos descargados y binarios ejecutables.

Notas

  • La biblioteca utiliza yt-dlp para manejar las descargas. Este módulo se actualiza automáticamente a través del archivo updateFile().
  • Se emplea un enfoque de reintentos en caso de fallos al descargar contenido o al probar cookies válidas.

Contribuir

Si deseas contribuir a este proyecto, puedes hacer un fork y crear una solicitud de pull con las mejoras. Asegúrate de seguir las mejores prácticas de desarrollo y de realizar pruebas antes de enviar tus cambios.


Este proyecto está bajo la licencia ISC. Consulta el archivo LICENSE para obtener más información.