You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Haha-Yes/utils/download.js

27 lines
680 B
JavaScript

const fs = require('fs');
const youtubedl = require('youtube-dl');
module.exports = function (url, option, output) {
return new Promise(function(resolve, reject) {
if (!url) reject('Require a url!');
if (!output) reject('Require an output parameter! (If you see this message please send a feedback to the dev about it.)');
if (option != null) option.push('--rm-cache-dir');
else option = ['--rm-cache-dir'];
const video = youtubedl(url, option);
video.on('error', function error(err) {
console.log(err.toString());
reject(err.toString());
});
video.pipe(fs.createWriteStream(output));
video.on('end', function() {
resolve(output);
});
});
};