网易云音乐歌单下载器

最近要帮小朋友下载一些小学的诗词mp3,找了各种工具,还是这个好使

yun-playlist-downloader: 网易云音乐歌单下载器

在这里插入图片描述

特性

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

注意

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

安装

# pnpm (推荐)
$ 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含义备注
:typealbum 或 playlist
:typeText专辑 或 列表
:name专辑名称 或 播放列表名称
:singer歌手名
:songName歌名(aka 标题)
:albumName所属专辑
:ext文件后缀,如 mp3 不带 .
:index01 , 02 … 12
:rawIndex0 1 … 11
:programDate电台节目发布日期仅电台可用
:programOrder数字, 电台第几期仅电台可用

默认值 = :name/:singer - :songName.:ext
电台默认 = :name/:programDate 第:programOrder 期 - :songName.:ext

-q, --quality 自定义下载音质
取值含义备注
128128kbits/s
192192kbits/s
320320kbits/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

要在Python中实现自动控制网易云音乐(NetEase Music)歌单的轮播功能,通常需要结合Web scraping技术和一些第三方库,如Selenium(用于模拟浏览器操作)、BeautifulSoup(解析HTML)以及可能的登录处理。以下是一个简化的步骤概述: 1. **安装必要的库**: - 使用pip安装`selenium`, `webdriver_manager`, `beautifulsoup4`等库: ``` pip install selenium webdriver_manager beautifulsoup4 ``` 2. **下载并配置WebDriver**: - 网易云音乐的播放器基于JavaScript,所以你需要选择一个支持JavaScript的浏览器驱动(如ChromeDriver)。从官网下载对应版本,并将其添加到系统PATH或设置好环境变量。 3. **模拟登录**: - 如果你想自动播放歌单,首先需要登录网易云账号。你可以使用`webdriver_manager`库来初始化浏览器,然后打开登录页面,输入用户名和密码点击登录。 4. **找到歌单轮播元素**: - 使用Selenium库控制浏览器打开目标歌单网页,通过BeautifulSoup解析页面获取轮播歌曲的HTML元素,这可能涉及CSS选择器、XPath或其他定位技术。 5. **遍历并播放下一首歌**: - 找到切换按钮或链接,通过Selenium发送点击事件来跳转到下一首歌曲。循环这个过程直到达到歌单的最后或满足停止条件。 6. **定时轮播**: - 可能的话,你还可以创建一个定时任务,比如每隔一段时间就自动轮播一次,可以使用`time.sleep()`函数加上合适的间隔时间。 注意:由于网易云音乐可能会有反爬虫策略,频繁的请求可能会导致账户受限甚至IP封禁,所以在实际应用时需要谨慎处理,遵守网站的使用协议。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

@井九

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值