Giter Site home page Giter Site logo

nmdown's Introduction

网易云音乐下载脚本

批量下载网易云音乐的歌曲,支持专辑和歌单,也可以下载歌词,补全歌曲标签和替换成清晰封面。

文件内容

  • cloudmusic 协议解析库
  • downloader 简单粗暴下载器
  • gmscript 油猴脚本
  • nmdown.py 主程序

Python 脚本

支持批量下载,下载后自动补充缺少的 ID3 Tags。

ID3 Tags

下载回来的 mp3 文件,ID3 Tags 只有歌名、专辑名和专辑封面,因此需要从元数据补充一下。

补充的 tag 有:

  • 艺术家
  • 在专辑中的序号/专辑歌曲总数
  • 发行商
  • 发行日期
  • 在云音乐中的地址(某些播放器可能不会显示)

依赖

cloudmusic 里的代码仅依赖 Python 2.7 的标准库。

downloader 依赖 Python 的 eyed3 库来修改 ID3 Tags。

用法

支持下载单曲、专辑、歌单,直接带上页面地址即可

单曲,下载到当前目录 :

./nmdown.py http://music.163.com/#/song?id=442723

专辑,下载到文件夹,默认是 [专辑]专辑名 :

./nmdown.py http://music.163.com/#/album?id=42967

歌单,下载到文件夹,默认是 [歌单]歌单名 :

./nmdown.py http://music.163.com/#/playlist?id=3020931

艺术家,下载到文件夹,默认是 [艺术家]艺术家名/[专辑]专辑名 :

./nmdown.py http://music.163.com/#/artist?id=2842

或者包含页面地址的本地文件,格式为每行一个 :

./nmdown.py url.txt

参数可以多个地址和文件名混合使用。

可选选项

可通过运行 ./nmdown.py --help 查看可选参数。

音质

-q 音质名 优先下载指定音质,音质名意义如下:

码率名

  • low 低音质,码率 96kbp/s。
  • medium 中等音质,码率 160kbp/s。
  • high 高音质,码率 320kpb/s,也有些歌曲是 256kbp/s 或 192kpb/s。

码率别名,其实就是码率名的映射

  • normal 普通音质,web 播放器的默认音质,相当于 medium ,默认下载此音质。
  • best 最佳音质,当前歌曲的最高码率音质,相当于 high

有些歌曲不存在 high 码率,有些甚至连 medium 都没有,使用码率名会下载不到, 而使用码率别名会自动降级映射,不会出错。

歌词

-l 同时下载歌词,创建 lrc 文件。

有些歌词可能没有时间轴。

下载目录

-o 指定使用的下载目录,如果不存在,则自动创建,默认使用当前目录。

封面

-c 替换为高分辨率封面。

原始的 mp3 文件自带封面,但是分辨率比较小,使用此选项替换为分辨率更高的图片。

油猴脚本

在歌曲页面上显示各种音质的下载地址和歌词。

许可证

GPLv3

nmdown's People

Contributors

iven avatar muzuiget avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.