完成下载

This commit is contained in:
2023-06-14 22:02:50 +08:00
parent bfde74bb87
commit 3963fd8fad
11 changed files with 160 additions and 133 deletions

View File

@@ -1,6 +1,7 @@
const path = require('path')
const { getListData } = require(path.join(__dirname,'/getList/qq.js'));
const {dow} = require("./utils.js")
const {dow} = require("./utils.js");
const { mkdirRecursions } = require('./markdir.js');
// async function getlist (url) {
// let list = await getListData(url)
@@ -14,7 +15,8 @@ const {dow} = require("./utils.js")
function dowload(info,callback){
console.log("开始")
mkdirRecursions(info.save)
console.log("开始",JSON.stringify(info))
dow(info,callback)
}

52
util/markdir.js Normal file
View File

@@ -0,0 +1,52 @@
const fs= require("fs")
const path = require("path")
/**
* 读取路径信息
* @param {string} path 路径
*/
function getStat(dir) {
try {
const stat = fs.statSync(dir);
return stat;
} catch (error) {
return false;
}
}
/**
* 创建路径
* @param {string} dir 路径
*/
function mkdir(dir) {
return fs.mkdirSync(dir)
}
/**
* 路径是否存在,不存在则创建
* @param {string} dir 路径
*/
function mkdirRecursions(dir) {
let isExists = getStat(dir);
console.log(isExists)
//如果该路径且不是文件返回true
if (isExists && isExists.isDirectory()) {
return true;
}
else if(isExists){
return false;
}
//如果该路径不存在,拿到上级路径
let tempDir = path.parse(dir).dir;
//递归判断,如果上级目录也不存在,则会代码会在此处继续循环执行,直到目录存在
let status = mkdirRecursions(tempDir);
let mkdirStatus;
if (status) {
mkdirStatus = mkdir(dir);
}
return mkdirStatus;
}
module.exports = {
mkdirRecursions
}

View File

@@ -10,7 +10,7 @@ function seep(time){
}
function dow(info,callback){
const lux = spawn("./bin/yt-dlp.exe", ['--cookies-from-browser', 'edge', '-P', 'D:/dl', '-o', info.title + '.mp4', info.url])
const lux = spawn("./bin/yt-dlp.exe", ['--cookies-from-browser', 'edge', '-P', info.save, '-o', info.title + '.mp4', info.url])
lux.stdout.on('data', (data) => {
console.log(String(data))
callback(String(data),false)