Skip to content

Spotify Playlist to MP3 Downloader: Download entire Spotify playlists as MP3 files with multi-threaded support, allowing multiple songs to download simultaneously. Customize the number of threads to speed up downloads for large playlists. MP3 files include proper metadata (title, artist, album) for easy organization.

License

Notifications You must be signed in to change notification settings

SpectreGame17/SpotifyDowloader

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

42 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

This program enables you to download entire Spotify playlists, album or song as MP3 files quickly and efficiently.

Features

  • Multi-threaded Downloads: Download multiple songs simultaneously by configuring the number of threads, speeding up the process for large playlists.
  • Customizable Coded: Customizable music format and quality (Currently unavailable).
  • Metadata Support: Each MP3 file is saved with proper metadata (title, artist, album, etc.) for better organization.
  • Playlist Update: If you need to add some tracks from a playlist, just re-enter the link and folder, and the program will download only the new ones.

Requirements

  • Spotify API credentials (Client ID and Client Secret). spotify.com
  • Internet connection.
  • Required dependencies (detailed in the setup instructions below).
  • Python python.org

Dependencies

The following Python libraries are required to run this program:

  • spotipy
  • yt-dlp
  • mutagen
  • ffmpeg-python
  • python-dotenv
  • colorama

Installing Dependencies

Run the following command to install the required libraries:

pip install -r requirements.txt

Additional Tool

FFmpeg: Required for processing and converting audio files:
On macOs (using Homebrew)

brew install ffmpeg

On Linux (Debian/Ubuntu):

sudo apt update
sudo apt install ffmpeg

On Windows:

  • Download the FFmpeg executable from the official site: https://ffmpeg.org/download.html.
  • Add FFmpeg to your system's PATH environment variable (refer to the official guide for instructions).

Usage

  1. Clone this repository.
  2. Configure Client Id, Client Secret, and Max Threads in .env file: Create a .env file in the same directory as your script and add the following variables
CLIENT_ID="your_spotify_client_id"
CLIENT_SECRET="your_spotify_client_secret"
MAX_THREADS=14  # Number of simultaneous downloads (adjust based on your PC's capability)
PREFERRED_CODEC=mp3 #Use only mp3, other codecs are currently not supported due to an issue with a library.
PREFERRED_QUALITY=192 # 320, 256, 192, 160, 128 , 96, 64
XDG_CACHE_HOME=./yt-cache
  1. Run the program and enjoy your MP3 downloads! -You can simply open it in Visual Studio and run it in a dedicated terminal. -You can create a spotifydl.bat file like this:
@echo off
cd /d "C:\Scripts\SpotifyDowloader"
setlocal
if exist .env (
  for /f "usebackq delims=" %%a in (".env") do set %%a
)
python "MultiThreadsSpotify.py"
endlocal

Remember, this is an example; your path may be different; then you need to add the path you set to the system's PATH environment variable, and you will be able to simply type spotifydl in the terminal to start the program.

About

Spotify Playlist to MP3 Downloader: Download entire Spotify playlists as MP3 files with multi-threaded support, allowing multiple songs to download simultaneously. Customize the number of threads to speed up downloads for large playlists. MP3 files include proper metadata (title, artist, album) for easy organization.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published