基于python requests的QQ音乐API,主要用于下载音乐,并且通过mutagen
设置音乐信息。
- python3.x
- requests、mutagen、beautifulsoup4(python第三方库)
首次运行demo.py会将setting.json
复制到本地(linux或macOS位于$HOME/.config/musec/setting.json
,windows位于%APPDATA%\musec\setting.json
)可以根据情况编辑setting.json
。
编辑好setting.json
后在demo.py
中取消注释相应的函数并修改函数中的参数。
- 注意:此项目并不能获取到所有音乐的链接,只能获取到传递的cookies所对应的账号有权播放的音乐(即vip用户可听的歌曲只有vip用户才能下载),如未传入cookies则只能获取非vip用户可播放的歌曲
在demo.py
中取消注释dl_song(mid...
一行,其中mid为必选参数,如未修改其他参数则会根据setting.json
中的设置传参。
mid为QQ音乐歌曲详细信息页面URL中的一串标识符,如晴天的详细信息页面为https://y.qq.com/n/yqq/song/0039MnYb0qxYhV.html
,则mid
为0039MnYb0qxYhV
。
在demo.py
中取消注释dl_album(mid...
一行,参数的使用同dl_song()
,mid为专辑详细信息URL中的标识符,此外参数ct表示从第ct首歌下载(顺序依据QQ音乐中的排列).
在demo.py
中取消注释dl_plist(mid...
一行,参数的使用同dl_album()
,mid为播放列表页面URL中的标识符。
运行前确保在本项目musec
目录下
$ python
>>> import downloader
>>> downloader.dl_song(mid) # 下载单曲
>>> downloader.dl_album(mid) # 下载专辑
>>> downloader.dl_plist(mid) # 下载歌单
更多函数信息和setting.json
的说明请见wiki界面。
可以以JSON的形式将cookies保存在$HOME/.config/musec/cookies.josn
(windows位于%APPDATA%\musec\cookies.json
),或将cookies以string的形式保存在setting.json
中的cookies_str
项中。(cookies.json
的优先级会高于setting.json
中的cookies_str
)
调用函数dl_song()
、dl_album()
或dl_plist()
时会自动读取cookies。
注意:请务必将uin
设置为cookies所对应的QQ账号,否则会无效。
- 高品质音乐下载
- lrc歌词文件下载
此项目处于开发中,仍须不断完善,如有问题或更好的想法欢迎Issues或PR。