Skip to content

krishsharma0413/spotify-dl

 
 

Repository files navigation

spotify_dl

Downloads songs from any Spotify playlist, album or track.

PRs Welcome PyPI download month PyPI license PyPI pyversions GitHub release GitHub stars GitHub contributors

Awesome Badges

Tell me more!

I wanted an easy way to grab the songs present in my library so I can download it & use it offline. I no longer use this, but continue to maintain this. spotify-dl doesn't download anything from Spotify. It picks up the metadata from Spotify API and then uses yt-dlp to download the song.

How do I get this thing running?

Install using pip

pip3 install spotify_dl

Run the program

spotify_dl -l spotify_playlist_link_1 spotify_playlist_link_2

If you want to make use of parallel download, pass -mc <number>, where <number> refers to number of cores. If this is too high, spotify-dl will set it to one lesser than max number of cores that you have.

spotify_dl -mc 4 -l spotify_playlist_link_1 spotify_playlist_link_2

Spotify-dl can make use of SponsorBlock and skip non-music sections when downloading from YouTube. This is disabled by default and can be enabled using:

    spotify_dl -l spotify_playlist_link_1 -s y

For running in verbose mode, append -V

spotify_dl -V -l spotify_playlist_link -o download_directory

For more details and other arguments, issue -h

spotify_dl -h

See the getting started guide for more details.

Demo

asciicast

Contributing and Local development

Pull requests and any contributions are always welcome. Please open an issue with your proposal before you start with something.

Running tests

Tests are setup and run with pytest, run

make tests

to run the tests with Make

Thanks and Credits

Take a look at CONTRIBUTORS for a list of all people who have helped and contributed to the project.

Issues, Feedback, Contact details

Feel free to raise any bugs/issues under Github issues. Pull requests are also more than welcome.

Releases

No releases published

Packages

No packages published

Languages

  • Python 96.7%
  • Shell 2.3%
  • Other 1.0%