Skip to content

CLI app that will download playlist by just providing it's URL

Notifications You must be signed in to change notification settings

MahraibFatima/spotifyPlaylistDownloader

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Spotify Playlist Downloader 🎵

This is a Py-based command-line program that allows you to download songs from a public Spotify playlist in .mp3 format. It combines the power of Spotify's API, YouTube search, and FFmpeg to fetch songs and save them locally in a folder named after the playlist.

Demo

Youtube


This Program Does

  • You provide a Spotify playlist URL.
  • The program fetches the song names, artists, and Spotify links.
  • A CSV file is generated with song details (name, artist, Spotify link).
  • Each song is searched on YouTube, and the best match is downloaded in MP3 format.
  • The songs are saved in a folder named after the Spotify playlist.
  • Songs and their metadata are neatly organized in a folder.

Setup Instructions

  • Clone the Repository
  • Install Dependencies
  • Install the required Python libraries
  • Set Up Spotify API Credentials
    • Visit Spotify Developer Dashboard.
    • Create an app to get your Client ID and Client Secret.
    • Replace your_client_id and your_client_secret in the code with your credentials.
  • Install FFmpeg
  • FFmpeg is required to convert audio into MP3 format
    • Download from FFmpeg website and add the bin folder to your system's PATH.

How to Run the Program

  • Open a terminal and navigate to the project folder.
  • Run the script:
    python main.py
  1. Enter the Spotify Playlist URL when prompted.

Folder Structure

After running the program, your project will look like this:

spotify-downloader/
│
├── My Playlist/           # Folder containing downloaded MP3s
│   ├── song1.mp3
│   ├── song2.mp3
│   └── ...
├── main.py                # The program file
├── My Playlist.csv        # CSV with song details
└── README.md              # You're here! :')

Want to Contribute?

  • Frontend developers: Build a simple GUI (e.g., a web app) to replace the CLI.
  • Backend developers: Enhance error handling, add support for private playlists, or build a web API for this.
  • Anyone else: Suggest features, optimize code, or improve documentation!

About

CLI app that will download playlist by just providing it's URL

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages