Skip to content

Latest commit

 

History

History
76 lines (53 loc) · 2.81 KB

README.md

File metadata and controls

76 lines (53 loc) · 2.81 KB

🎶Spotify-playlist-downloader

Table of Contents


First look 👀

With this app, we can confidently download our favorite playlists and albums from Spotify (legally, I think).

The app is based on Spotipy and has a very intuitive user interface written in the Streamlit.

Downloading is provided to us by the Pytube.


Installation ℹ

  • First of all, clone this repository on your device. Open your shell and paste the following commands:

URL cloning

git clone https://github.com/maciekmalachowski/Spotify-playlist-downloader.git

SSH cloning

git clone git@github.com:maciekmalachowski/Spotify-playlist-downloader.git

  • Then you need to install the requirements contained in requirements.txt.
pip install -r requirements.txt
  • Last but not least, create a .env file and paste the following code there:
SPOTIPY_CLIENT_ID=`your_spotipy_client_id''
SPOTIPY_CLIENT_SECRET='your_spotipy_client_secret'
SPOTIPY_REDIRECT_URI='https://google.com/'

where your_spotipy_client_id and your_spotipy_client_secret are your own keys. Check out how to get them

Please note that SPOTIPY_REDIRECT_URI must be equal to https://google.com/


  • After that run internal streamlit server in the repository folder.
streamlit run app.py

Streamlit will launch the app.py file contained in the folder and automatically display it in the browser.


How it works 🤔

At first, the application asks us for a link to our Spotify profile.

Then it redirects us to https://google.com/. We have to copy the whole link and paste it into the terminal, where it automatically asks us for it.

After this step, Spotipy reads our liked albums and created playlists with their songs.

We can confidently choose what we want to download and then press the download button.

In the meantime, the Pytube library searches YouTube for the names of our songs and downloads them at the indicated location.

When the download is complete, we get the appropriate message.


App appearance 🔍

The user interface is prepared to guide the user step-by-step.

Appearance