CharlesPikachu / musicdl

Musicdl: A lightweight music downloader written in pure python.
https://musicdl.readthedocs.io/
Apache License 2.0
1.18k stars 270 forks source link
163music downloader joox kugou-music kuwo migu music music-downloader netease netease-cloud-music qianqian-music qqmusic tencent xiami


docs PyPI - Python Version PyPI license PyPI - Downloads PyPI - Downloads issue resolution open issues

Documents: https://musicdl.readthedocs.io/

Musicdl

A lightweight music downloader written in pure python.
You can star this repository to keep track of the project if it's helpful for you, thank you for your support.

Statement

This repository is created just for learning python(Commercial prohibition).
All the apis used in this repository are from public network. So, if you want to download the paid songs, 
please open a paid member on corresponding music platform by yourself (respect the music copyright please).
Finally, if there are any infringements, please contact me to delete this repository.

Support List

Source_EN Support Search? Support Download? Source_CN
QQMusic QQ音乐
Lizhi 荔枝FM
Yiting 一听音乐
Kuwo 酷我音乐
Kugou 酷狗音乐
Qianqian 千千音乐
Migu 咪咕音乐
JOOX JOOX音乐
Fivesing 5SING音乐
Netease 网易云音乐
Ximalaya 喜马拉雅

Practice with Musicdl

Project_EN Introduction Code Project_CN
musicdlgui click click 音乐下载器GUI界面
singerlyricsanalysis click click 歌手歌词分析
searchlyrics click click 歌词获取歌曲片段

Install

Pip install

run "pip install musicdl"

Source code install

(1) Offline
Step1: git clone https://github.com/CharlesPikachu/musicdl.git
Step2: cd musicdl -> run "python setup.py install"
(2) Online
run "pip install git+https://github.com/CharlesPikachu/musicdl.git@master"

Quick Start

Run by leveraging the API

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)

Run by leveraging compiled file

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.

Screenshot

img

Projects in Charles_pikachu

Citation

If you use this project in your research, please cite this project.

@misc{musicdl2020,
    author = {Zhenchao Jin},
    title = {Musicdl: A lightweight music downloader written in pure python},
    year = {2020},
    publisher = {GitHub},
    journal = {GitHub repository},
    howpublished = {\url{https://github.com/CharlesPikachu/musicdl}},
}

More

WeChat Official Accounts

Charles_pikachu
img