安装使用¶
安装方式¶
1.PIP安装
在终端运行如下命令即可(请保证python在环境变量中):
pip install musicdl --upgrade
2.源代码在线安装
运行如下命令即可实现源代码在线安装:
pip install git+https://github.com/CharlesPikachu/musicdl.git@master
3.源代码离线安装
利用如下命令下载musicdl源代码到本地:
git clone https://github.com/CharlesPikachu/musicdl.git
接着, 切到musicdl目录下:
cd musicdl
最后运行如下命令进行安装:
python setup.py install
快速开始¶
1.终端直接调用编译好的文件
运行方式如下:
Usage: musicdl [OPTIONS]
Options:
--version Show the version and exit.
-k, --keyword TEXT 搜索的歌曲关键字, 若不指定, 则进入musicdl终端版
-l, --logfilepath TEXT 日志文件保存的路径
-p, --proxies TEXT 设置的代理
-s, --savedir TEXT 下载的音乐保存路径
-c, --count TEXT 在各个平台搜索时的歌曲搜索数量
-t, --targets TEXT 指定音乐搜索的平台, 例如"migu,joox"
--help Show this message and exit.
例如在终端直接输入:
musicdl -k 那些年
这里是一个简单效果演示:
2.歌曲搜索
实现音乐搜索功能的示例代码如下:
from musicdl import musicdl
config = {'logfilepath': 'musicdl.log', 'savedir': 'downloaded', 'search_size_per_source': 5, 'proxies': {}}
target_srcs = [
'kugou', 'kuwo', 'qqmusic', 'qianqian', 'fivesing',
'netease', 'migu', 'joox', 'yiting',
]
client = musicdl.musicdl(config=config)
search_results = client.search('说好不哭', target_srcs)
其中config是一个字典对象, 字典内各参数含义:
logfilepath: 日志文件保存路径;
proxies: 设置代理, 支持的代理格式参见Requests;
search_size_per_source: 在各个平台搜索时的歌曲搜索数量;
savedir: 下载的音乐保存路径;
page: 部分搜索源支持指定搜索结果的页码。
target_srcs是一个列表对象, 用于指定音乐搜索的平台:
lizhi: 荔枝FM
migu: 咪咕音乐
kuwo: 酷我音乐
joox: JOOX音乐
kugou: 酷狗音乐
yiting: 一听音乐
qqmusic: QQ音乐
qianqian: 千千音乐
fivesing: 5SING音乐
netease: 网易云音乐
ximalaya: 喜马拉雅
search_results为歌曲搜索的结果, 是一个字典对象, 格式如下:
{
搜索平台: 歌曲信息
}
3.歌曲下载
下载各平台音乐搜索结果的示例代码如下:
from musicdl import musicdl
config = {'logfilepath': 'musicdl.log', 'savedir': 'downloaded', 'search_size_per_source': 5, 'proxies': {}}
target_srcs = [
'kugou', 'kuwo', 'qqmusic', 'qianqian', 'fivesing',
'netease', 'migu', 'joox', 'yiting',
]
client = musicdl.musicdl(config=config)
search_results = client.search('说好不哭', target_srcs)
for key, value in search_results.items():
client.download(value)
当然你也可以自己打印搜索结果, 并自己选择想要下载的歌曲, 例如:
print(search_results)
client.download([search_results['migu'][0]])
注意, download函数传入的参数必须是一个列表对象。
4.自定义平台
通过安装musicdl, 你可以自定义平台进行音乐搜索和下载, 示例代码如下:
from musicdl import musicdl
config = {'logfilepath': 'musicdl.log', 'savedir': 'downloaded', 'search_size_per_source': 5, 'proxies': {}}
target_srcs = [
'kugou', 'kuwo', 'qqmusic', 'qianqian', 'fivesing',
'netease', 'migu', 'joox', 'yiting',
]
client = musicdl.musicdl(config=config)
# 手动输入版
client.run(target_srcs)
# 语音版
client.runbyspeech(target_srcs)
target_srcs是一个列表对象, 用于自定义平台:
lizhi: 荔枝FM
migu: 咪咕音乐
kuwo: 酷我音乐
joox: JOOX音乐
kugou: 酷狗音乐
yiting: 一听音乐
qqmusic: QQ音乐
qianqian: 千千音乐
fivesing: 5SING音乐
netease: 网易云音乐
ximalaya: 喜马拉雅