• Stars
    star
    504
  • Rank 87,537 (Top 2 %)
  • Language
    TypeScript
  • Created over 9 years ago
  • Updated about 1 year ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

网易云音乐 - 歌单/专辑/电台 - 下载器

yun-playlist-downloader

网易云音乐 - 歌单 - 下载器

Build Status Coverage Status npm version npm downloads node version license

特性

  • 支持歌单 / 专辑 / 电台
  • 音质选择
  • 下载超时 / 重试
  • 再次下载默认跳过已下载部分, 使用 content-length 匹配
  • 自定义文件名
  • 下载进度显示

注意

本项目不支持越权使用, VIP 歌曲请开通 VIP 后结合 --cookie 使用. see #54

安装

# pnpm (recommend)
$ pnpm add -g yun-playlist-downloader

# npm
$ npm i yun-playlist-downloader -g

使用

Usage: yun <url> [options]

位置:
  url  歌单/专辑的链接                                                  [字符串]

选项:
      --retryTimeout  下载超时(分)                            [数字] [默认值: 3]
      --retryTimes    下载重试次数                            [数字] [默认值: 3]
      --cover         下载封面                            [布尔] [默认值: false]
      --cookie        cookie文件             [字符串] [默认值: "yun.cookie.txt"]
  -h, --help          显示帮助信息                                        [布尔]
  -v, --version       显示版本号                                          [布尔]
  -c, --concurrency   同时下载数量                                        [数字]
  -f, --format        文件格式                                          [字符串]
  -q, --quality       音质                                                [数字]
  -s, --skip          对于已存在文件且大小合适则跳过                      [布尔]
  -p, --progress      是否显示进度条                                      [布尔]

示例:
  yun -c 10 <url>                          10首同时下载
  yun -f ":singer - :songName.:ext" <url>  下载格式为 "歌手 - 歌名"

帮助 & 文档: https://github.com/magicdawn/yun-playlist-downloader

--retry-timeout 重试超时

设置下载超时, 单位为分, 默认 3 分钟

--retry-times 重试次数

设置下载重试次数, 需要与 --retry-timeout 搭配使用,默认 3 次

--cover 下载封面

默认不下载

--cookie 已登录 cookie 存放地址

docs/cookie.md

-c, --concurrency 下载并发

下载并发

-f, --format 自定义文件名

token 含义 备注
:type = album or playlist
:typeText = 专辑 or 列表
:name 专辑名称 or 播放列表名称
:singer 歌手名
:songName 歌名(aka 标题)
:albumName 所属专辑
:ext 文件后缀,如 mp3 不带 .
:index 01 , 02 ... 12
:rawIndex 0 1 ... 11
:programDate 电台节目发布日期 仅电台可用
:programOrder 数字, 电台第几期 仅电台可用
  • 默认值 = :name/:singer - :songName.:ext
  • 电台默认 = :name/:programDate 第:programOrder 期 - :songName.:ext

-q, --quality 自定义下载音质

取值 含义 备注
128 128kbits/s
192 192kbits/s
320 320kbits/s 默认

-s, --skip 是否跳过下载

  • 对于文件已存在, 而且文件大小与要下载的网络文件的 content-length 大小一致, 则跳过下载
  • 默认启用
  • 使用 --skip false 关闭该特性

-p, --progress 是否显示进度条

  • 默认 true, 显示进度条, 使用 false 不显示进度条
  • 使用了模块 ascii-progress, 问题比较多, 比如非 tty, 在控制台输入一些东西进度显示就乱了, 故提供选项关闭该特性

.yunrc

该工具使用了 rc 模块, 会去遍历读取 .yunrc 配置文件 具体规则见 rc 模块 README https://github.com/dominictarr/rc#standards

截图

更新记录

CHANGELOG.md

支持

  • 如果对你有用,请来个 Star :)
  • 如果你喜欢这个项目, 可以 「爱发电」 支持一下

afdian-magicdawn_w375

License

the MIT License http://magicdawn.mit-license.org

More Repositories

1

weread-spy

weread-spy: 使用微信读书 Web 版生成 ePub 电子书
TypeScript
92
star
2

superagent-charset

add charset support for node's superagent
JavaScript
84
star
3

clash-config-manager

macOS clashX 配置生成器
TypeScript
66
star
4

bilibili-app-recommend

[UserScript] 为 B 站首页添加像 App 一样的推荐
TypeScript
57
star
5

magicdawn

个人学习 / 代码 / 总结 / 读书笔记
JavaScript
24
star
6

node-huaban

花瓣(http://huaban.com) 画板下载器
JavaScript
23
star
7

go-co

coroutine , async/await for golang
Go
22
star
8

razor-tmpl

razor style template engine for JavaScript
JavaScript
21
star
9

promise.map

Promise.map
JavaScript
18
star
10

promise.timeout

add timeout support for async function
JavaScript
10
star
11

awesome-nodejs-precise

same as awesome-nodejs, but more precise
JavaScript
9
star
12

express-modern

use async function or generator function with express
JavaScript
9
star
13

baijiaxing.js

baijiaxing = 百家姓
JavaScript
8
star
14

vue-mgl

mapbox-gl vue components (map, layers, sources, controls). docs see:
JavaScript
7
star
15

dl-vampire

Download file like a vampire
TypeScript
6
star
16

node-mysql-aes

A Node.js implementation of MySQL `aes_encrypt` and `aes_decrypt`
JavaScript
6
star
17

impress-router

express style router for koa2
JavaScript
6
star
18

handy-img

handy img tool and API
TypeScript
5
star
19

simple-mac-clipboard

simple mac clipboard for node & electron
JavaScript
5
star
20

bitbar-pm25

JavaScript
5
star
21

promise.retry

add (timeout and fail) retry for async functions
JavaScript
4
star
22

promise.ify

promiseify / promisify / promise-ify / pify
JavaScript
4
star
23

node-mozjpeg

mozjpeg node binding
C++
4
star
24

esformatter-curly

keep original curly fot import & one line object literal
JavaScript
4
star
25

bj-hospital-vis

北京社保定点医院-可视化
Vue
4
star
26

vsc-custom-css-cli

cli to patch vscode, like the vscode-custom-css extension, but in cli
TypeScript
3
star
27

my-google

Google Search
JavaScript
3
star
28

x

personal utils repo
JavaScript
3
star
29

promise.sleep

promise.sleep
JavaScript
3
star
30

waterline-auto

Automatically generate bare Waterline models from your database.
JavaScript
3
star
31

promise.obj

promise.obj / promise.props
JavaScript
2
star
32

nvm-for-windows

Yep ! Another『 Node Version Manager 』Tool for Windows
C#
2
star
33

img-tailor

TypeScript
1
star
34

vue-cli-plugin-expose-env

vue cli 3 plugin to expose none `VUE_APP_` env to frontend
JavaScript
1
star
35

SuperAgent.NET

SuperAgent in .NET
C#
1
star
36

WinQuery

A instance of jQuery on .NET Windows Forms
C#
1
star
37

Magicdawn-Library

C#
1
star
38

generator-tampermonkey

yo generator for tampermonkey scripts
JavaScript
1
star
39

koa-generic-views

koa generic views
JavaScript
1
star
40

jshint-config-builder

jshint-config-builder
JavaScript
1
star
41

http-static-server

simple http static server
HTML
1
star
42

generator-magicdawn

Yeoman generator for self use
TypeScript
1
star
43

html-external-webpack-plugin

add external js,css to html-webpack-plugin
JavaScript
1
star
44

iya

[WIP] iya = 哎呀
JavaScript
1
star
45

iina-plugin-bilibili

IINA + Bilibili
TypeScript
1
star
46

node-net-playground

Node.js Network Programing Playground
JavaScript
1
star
47

redux-standard-reducer

A redux reducer for standard action that merge data to state
JavaScript
1
star
48

ractive-engine

Template engine for node.js with Ractive.js
JavaScript
1
star
49

next-page-kit

Helper for handle next-next page
JavaScript
1
star