通过命令行在线搜索你喜欢的音乐,下载并试听.
mxget
通过命令行在线搜索你喜欢的音乐,下载并试听。
支持的音乐平台
音乐平台 | 平台标识 |
---|---|
网易云音乐 | netease / nc |
QQ音乐 | tencent / qq |
咪咕音乐 | migu / mg |
酷狗音乐 | kugou / kg |
酷我音乐 | kuwo / kw |
虾米音乐 | xiami / xm |
千千音乐 | qianqian / baidu / bd |
下载安装
go get -u github.com/winterssy/mxget
使用帮助
_____ ______ ___ ___ ________ _______ _________
|\ _ \ _ \ |\ \ / /|\ ____\|\ ___ \|\___ ___\
\ \ \\\__\ \ \ \ \ \/ / | \ \___|\ \ __/\|___ \ \_|
\ \ \\|__| \ \ \ \ / / \ \ \ __\ \ \_|/__ \ \ \
\ \ \ \ \ \ / \/ \ \ \|\ \ \ \_|\ \ \ \ \
\ \__\ \ \__\/ /\ \ \ \_______\ \_______\ \ \__\
\|__| \|__/__/ /\ __\ \|_______|\|_______| \|__|
|__|/ \|__|
A simple tool that help you search and download your favorite music,
please visit https://github.com/winterssy/mxget for more detail.
Usage:
mxget [command]
Available Commands:
album Fetch and download album's songs via its id
artist Fetch and download artist's hot songs via its id
config Specify the default behavior of mxget
help Help about any command
playlist Fetch and download playlist's songs via its id
search Search songs from the specified music platform
serve Run mxget as an API server
song Fetch and download single song via its id
Flags:
-h, --help help for mxget
--version version for mxget
Use "mxget [command] --help" for more information about a command.
- 搜索歌曲
$ mxget search --from nc -k Faded
- 下载歌曲
$ mxget song --from nc --id 36990266
- 下载专辑
$ mxget album --from nc --id 3406843
- 下载歌单
$ mxget playlist --from nc --id 156934569
- 下载歌手热门歌曲
$ mxget artist --from nc --id 1045123
- 自动更新音乐标签/下载歌词
如果你希望 mxget
为你自动更新音乐标签,可使用 --tag
指令,如:
$ mxget song --from nc --id 36990266 --tag
当使用 --tag
指令时,mxget
会同时将歌词内嵌到音乐文件中,一般而言你无须再额外下载歌词。如果你确实需要 .lrc
格式的歌词文件,可使用 --lyric
指令,如:
$ mxget song --from nc --id 36990266 --lyric
- 设置默认下载目录
默认情况下,mxget
会下载音乐到当前目录下的 downloads
文件夹,如果你想要更改此行为,可以这样做:
$ mxget config --dir <directory>
directory
必须为绝对路径。
- 设置默认音乐平台
mxget
默认使用的音乐平台为网易云音乐,你可以通过以下命令更改:
$ mxget config --from qq
这样,如果你不通过 --from
指令指定音乐平台,mxget
便会使用默认值。
在上述命令中,你会经常用到 --from
以及 --id
这两个指令,它们分别表示音乐平台标识和音乐id。
音乐id为音乐平台为对应资源分配的唯一id,当使用
mxget
进行搜索时,歌曲id会显示在每条结果的后面。你也可以通过各大音乐平台的网页版在线搜索相关资源,然后从结果详情页的URL中获取其音乐id。值得注意的是,酷狗音乐对应的歌曲id即为文件哈希hash
。
- 多任务下载
mxget
支持多任务快速并发下载,你可以通过 --limit
参数指定同时下载的任务数,如不指定默认为CPU核心数。
$ mxget playlist --from nc --id 156934569 --limit 16
mxget
允许设置的最高并发数是32,但使用时建议不要超过16。
免责声明
- 本项目仅供学习研究使用。
- 本项目使用的接口如无特别说明均为官方接口,音乐版权归源音乐平台所有.
from
https://github.com/winterssy/mxget
---------------------------------------------
网易云音乐、QQ音乐一键下载工具.
Music-Get
网易云音乐 | QQ音乐 下载助手,支持一键下载单曲/专辑/歌单以及歌手热门歌曲,并自动更新音乐标签。
本项目仅供学习研究使用。如侵犯你的权益,请 联系作者 删除。
下载安装
你可以前往 Releases 标签下载程序的最新版本,或者克隆项目源码自行编译。
如何使用?
直接将音乐地址作为命令行参数传入即可,如:
- 下载单曲:
$ music-get https://music.163.com/#/song?id=553310243
$ music-get https://y.qq.com/n/yqq/song/002Zkt5S2z8JZx.html
- 下载专辑:
$ music-get https://music.163.com/#/album?id=38373053
$ music-get https://y.qq.com/n/yqq/song/002Zkt5S2z8JZx.html
- 下载歌单:
$ music-get https://music.163.com/#/playlist?id=156934569
$ music-get https://y.qq.com/n/yqq/album/002fRO0N4FftzY.html
- 下载歌手热门歌曲:
$ music-get https://music.163.com/#/artist?id=13193
$ music-get https://y.qq.com/n/yqq/singer/000Sp0Bz4JXH0o.html
命令选项:
-br
:优先下载音质,可选128/192/320,默认128。-o
:下载保存目录,默认为/home/用户名/Music-Get
(Windows为C:\\Users\\用户名\\Music-Get
)。-n
:并发下载任务数,最大值16,默认1,即单任务下载。-h
:获取命令帮助。
注: 命令选项必须先于其它命令行参数输入。
运行截图
- 单任务下载:
- 多任务同时下载:
- 自动更新音乐标签(效果预览):
致谢
-
网易云音乐 Node.js API:Binaryify/NeteaseCloudMusicApi
-
@mrdong916 提供的QQ音乐接口(用于支持320kbps高音质下载):MessAPI
from
https://github.com/872409/music-get
-----------------------------------------------
search and download music 从网易云音乐、QQ音乐、酷狗音乐、百度音乐、虾米音乐、咪咕音乐等搜索和下载歌曲.
Music-dl: Listen to what you want
Music-dl is a command line tool which helps you search and download music from multiple sources.
Support for QQ music, Netease music, Xiami music, Kugou music and Baidu music. See supported sources.
Python3 Only. Python 3.5+ Recommended.
English | 中文文档
Music-dl 是一个基于Python3的命令行工具,可以从多个网站搜索和下载音乐,方便寻找音乐,解决不知道哪个网站有版权的问题。工具的本意是聚合搜索,API 是从公开的网络中获得,不是破解版,也听不了付费歌曲。
禁止将本工具用于商业用途,如产生法律纠纷与本人无关,如有侵权,请联系我删除。
微博:可乐芬达王老吉
QQ群:785798493
最近API封杀有点多,个人有点维护不过来,需要大家帮忙更新。查看 支持的音乐源列表
注意: 部分音乐源在一些国家和地区不可用,可以考虑使用中国大陆代理。获取公共代理的方式可以参考我的另一个项目https://github.com/0xHJK/Proxies,两分钟获得数千个有效代理。
功能
- 部分歌曲支持无损音乐
- 优先搜索高品质音乐(无损 -> 320K -> 128K)
- 支持 HTTP 和 SOCKS 代理
- 支持多线程搜索
- 支持搜索结果去重和排序
- 支持搜索关键字高亮
- 支持下载歌词和封面(部分)
注意:仅支持Python3,建议使用 Python3.5 以上版本
安装
使用pip安装(推荐,注意前面有一个py
):
$ pip3 install pymusic-dl
手动安装(最新):
$ git clone https://github.com/0xHJK/music-dl.git
$ cd music-dl
$ python3 setup.py install
不安装直接运行:
$ git clone https://github.com/0xHJK/music-dl.git
$ cd music-dl
$ pip3 install -r requirements.txt
$ ./music-dl
# 或 python3 music-dl
在以下环境测试通过:
系统名称 | 系统版本 | Python版本 |
---|---|---|
macOS | 10.14 | 3.7.0 |
macOS | 10.13 | 3.7.0 |
Windows | Windows 7 x64 | 3.7.2 |
Windows | Windows 10 x64 | 3.7.2 |
Ubuntu | 16.04 x64 | 3.5.2 |
使用方式
v3.0预览版命令有较大的改变,建议先查看帮助
$ music-dl --help
Usage: music-dl [OPTIONS]
Search and download music from netease, qq, kugou, baidu and xiami.
Example: music-dl -k "周杰伦"
Options:
--version Show the version and exit.
-k, --keyword TEXT 搜索关键字,歌名和歌手同时输入可以提高匹配(如 空帆船 朴树)
-u, --url TEXT 通过指定的歌曲URL下载音乐
-p, --playlist TEXT 通过指定的歌单URL下载音乐
-s, --source TEXT Supported music source: qq netease kugou baidu
-n, --number INTEGER Number of search results
-o, --outdir TEXT Output directory
-x, --proxy TEXT Proxy (e.g. http://127.0.0.1:1087)
-v, --verbose Verbose mode
--lyrics 同时下载歌词
--cover 同时下载封面
--nomerge 不对搜索结果列表排序和去重
--help Show this message and exit.
- 默认搜索
qq netease kugou baidu
,每个数量限制为5,保存目录为当前目录。 - 指定序号时可以使用
1-5 7 10
的形式。 - 默认对搜索结果排序和去重,排序顺序按照歌手和歌名排序,当两者都相同时保留最大的文件。
- 无损音乐歌曲数量较少,如果没有无损会显示320K或128K。
- 支持http代理和socks代理,格式形如
-x http://127.0.0.1:1087
或-x socks5://127.0.0.1:1086
示例:
支持的音乐源列表
音乐源 | 缩写 | 网址 | 有效 | 无损 | 320K | 封面 | 歌词 | 歌单 | 单曲 |
---|---|---|---|---|---|---|---|---|---|
QQ音乐 | https://y.qq.com/ | ✓ | - | - | ✕ | ✓ | ✕ | ✕ | |
酷狗音乐 | kugou | http://www.kugou.com/ | ✓ | - | - | - | ✕ | - | ✕ |
网易云音乐 | netease | https://music.163.com/ | ✓ | - | ✓ | ✓ | ✓ | ✓ | ✓ |
咪咕音乐 | migu | http://www.migu.cn/ | ✓ | ✓ | ✓ | ✓ | ✓ | ✕ | ✕ |
百度音乐 | baidu | http://music.baidu.com/ | ✓ | - | ✓ | ✓ | ✓ | ✕ | ✕ |
虾米音乐 | xiami | https://www.xiami.com/ | ✕ | - | - | - | - | ✕ | ✕ |
-
表示不一定支持,✓
表示部分或完全支持,✕
表示尚未支持
欢迎提交插件支持更多音乐源!插件写法参考addons
中的文件.
提Issues说明
- 检查是否是最新的代码,检查是否是Python3.5+,检查依赖有没有安装完整。
- 说明使用的操作系统,例如Windows 10 x64
- 说明Python版本,以及是否使用了pyenv等虚拟环境
- 说明使用的命令参数、搜索关键字和出错的音乐源
- 使用
-v
参数重试,说明详细的错误信息,最好有截图 - 如果有新的思路和建议也欢迎提交
Credits 致谢
本项目受以下项目启发,参考了其中一部分思路,向这些开发者表示感谢。
- https://github.com/requests/requests
- https://github.com/soimort/you-get
- https://github.com/maicong/music
- https://github.com/YongHaoWu/NeteaseCloudMusicFlac
- https://github.com/darknessomi/musicbox
from