Spotify Playlist sync for Plex
Find a file
Aditya Gupta 5b64b16f81 bak
2023-01-01 14:56:00 +05:30
deezer_python bak 2023-01-01 14:56:00 +05:30
docs/img Improved documentation 2022-12-21 14:11:23 +05:30
music bak 2023-01-01 14:56:00 +05:30
spotiplex bak 2023-01-01 14:56:00 +05:30
.gitignore download_test 2022-12-23 17:42:30 +05:30
fetch.py bak 2023-01-01 14:56:00 +05:30
func.py download_test 2022-12-23 17:42:30 +05:30
LICENSE Optimized Track Loading 2022-12-19 21:17:14 +05:30
log.txt bak 2023-01-01 14:56:00 +05:30
main.py download_test 2022-12-23 17:42:30 +05:30
matching.py Implemented Live Display and redo plex matching 2022-12-22 17:10:24 +05:30
plex.py Implemented Live Display and redo plex matching 2022-12-22 17:10:24 +05:30
README.md Improved documentation 2022-12-21 14:11:23 +05:30
requirements.txt bak 2023-01-01 14:56:00 +05:30
test.py Implemented Live Display -> Matching Utility 2022-12-22 07:43:45 +05:30

spotiplex

Spotify Playlist sync for Plex

Matching Utility

Working

Spotiplex is a small program to help you sync your playlists from spotify and potentially other streaming services to plex.

It first uses the spotipy library to fetch the songs in a playlist and then checks with your plex instance for the tracks in the said playlist. After the scan the user is met with a matching utility where the user can manually confirm the matches made for the fetched tracks and then spotiplex searches for the tracks on deezer and youtube and then downloads them to the plex server.

I was particularly looking for such a solution as I often ran into issues where I would end up downloading duplicate tracks and it was a pain tagging them and organizing my library. This might just ease up the process.

In the future I will look towards implementing support for other services too if possible.

Installation

Install all the required modules present in requirements.txt

pip install -r requirements.txt

Create credentials.py in the current directory with the following text.

plex_email = "PLEX_EMAIL"
plex_password = "PLEX_PASSWORD"
plex_server = "PLEX_SERVER_NAME"

spotify_client_id = "CLIENT_ID"
spotify_client_secret = "CLIENT_SECRET"

deemix_username =  'DEEMIX_USERNAME'
deemix_password = 'DEEMIX_PASSWORD'

Replace the following strings with your own credentials and then run main.py

Devlog

19th December 2022

  • Improved Matching Utility UI, replaced track control with playlist view along with track color coding
  • More sensible track color coding
  • Added track confirmation

18th December 2022

  • Spotiplex can take playlist IDs, fetch the songs and check if they are present in your plex installation or not.
  • The matching utility can now display all the songs that have similar names and browser through them.