1.1.4 • Published 11 months ago

yt-playlist-downloader v1.1.4

Weekly downloads
-
License
ISC
Repository
github
Last release
11 months ago

yt-playlist-downloader

A tool for downloading YouTube playlists.

Installation

The Youtube Playlist Downloader package is available on npm as yt-playlist-downloader:

$ npm install --save yt-playlist-downloader

To use the module in your application, require it from any JavaScript file:

const { PlaylistDownloader } = require("yt-playlist-downloader");

Usage

const { PlaylistDownloader } = require('yt-playlist-downloader');

const playlist_url = 'https://music.youtube.com/playlist?list=<PLAYLIST_ID>';
const max_parallel_downloads = 4; //Default: 5
const output_folder = './music' //Default: os.tmpdir()
const playlist_size_limit = Infinity; //Default: Infinity

const pldl = new PlaylistDownloader(
    playlist_url,
    max_parallel_downloads,
    output_folder,
    playlist_size_limit
);

pldl.download().then(() => {
    //Done!
}).catch((err) => {
    //Some error ocurred
});

Events

Information

Triggers when got playlist information

pldl.on('info', (playlist_info) => {
    //Playlist info
});

Status changed

Triggers when downloader status changes

pldl.on('status_changed', (status) => {
    //status: 'preparing', 'downloading', 'completed'
})

Progress

Triggers when there is progress in download

pldl.on('progress' (progress) => {
    /*
        progress = {
            chunk_size: Max parallel downloads,
            accumulated: Bytes already downloaded,
            total_size: Total size in bytes,
            chunk: Chunk number,
            total_chunks: Total chunks,
            video_info: Video information,
        }
    */
});

All completed

Triggers when all playlist vdeos are downloaded

pldl.on('all_completed', (playlist_id) => {
    //Playlist download completed
})

Single completed

Triggers when a single video is downloaded from playlist

pldl.on('single_completed', (video_info) => {
    //Single video download complete
})

License

This project is licensed under the MIT License.

Repository

The source code for this module can be found on GitHub.

1.1.4

11 months ago

1.1.3

11 months ago

1.1.2

12 months ago

1.1.1

12 months ago

1.1.0

12 months ago

1.0.2

12 months ago

1.0.1

12 months ago

1.0.0

12 months ago