DedSecer / musec

QQ音乐 python API

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

MUSEC

基于python requests的QQ音乐API,主要用于下载音乐,并且通过mutagen设置音乐信息。

requriments:

  • python3.x
  • requests、mutagen、beautifulsoup4(python第三方库)

Tips:此项目仅供学习和参考。

Quick Start

首次运行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,则mid0039MnYb0qxYhV

专辑下载

demo.py中取消注释dl_album(mid...一行,参数的使用同dl_song()mid为专辑详细信息URL中的标识符,此外参数ct表示从第ct首歌下载(顺序依据QQ音乐中的排列).

歌单下载

demo.py中取消注释dl_plist(mid...一行,参数的使用同dl_album()mid为播放列表页面URL中的标识符。

在python交互式环境中运行

运行前确保在本项目musec目录下

$ python
>>> import downloader
>>> downloader.dl_song(mid) # 下载单曲
>>> downloader.dl_album(mid) # 下载专辑
>>> downloader.dl_plist(mid) # 下载歌单

更多函数信息和setting.json的说明请见wiki界面。

关于cookies

可以以JSON的形式将cookies保存在$HOME/.config/musec/cookies.josn(windows位于%APPDATA%\musec\cookies.json),或将cookiesstring的形式保存在setting.json中的cookies_str项中。(cookies.json的优先级会高于setting.json中的cookies_str)

调用函数dl_song()dl_album()dl_plist()时会自动读取cookies。

注意:请务必将uin设置为cookies所对应的QQ账号,否则会无效。

TODO

  • 高品质音乐下载
  • lrc歌词文件下载

THE END

此项目处于开发中,仍须不断完善,如有问题或更好的想法欢迎Issues或PR。

About

QQ音乐 python API


Languages

Language:Python 100.0%