Skip to main content

spotify_sync

Python Versions PyPi package Downloads License Documentation Code Style

Introduction

spotify_sync is a CLI app written in Python allowing you to download songs from your Spotify account. It is designed to be a 'set and forget' tool for users wanting to keep an offline copy of their library. Spotify songs are matched to a 1:1 Deezer equivalent via their ISRC and then queued for download.

Features:

  • Download of liked songs
  • Download of playlist songs
  • Up-to lossless quality downloads
  • Multi-threaded downloading
  • Scheduling (e.g. cron)
  • Multi-config support; configure and schedule multiple profiles with separate Spotify accounts
  • Backup and restore of config and persistent data
  • Notification support via Pushover
  • Automatic Plex library scanning via Autoscan

Requirements

  1. Python & pip >= 3.8
  2. Spotify account (Free)
  3. Deezer account (Free allows 128kbps downloads, up to lossless requires Deezer Hi-Fi account)

Install

python3 -m pip install -U spot_sync

Usage

Simple usage would be..

Cache Spotify OAuth token

spotify_sync utils authorize-spotify --profile myFirstProfile

Run in automatic mode

spotify_sync run auto --profile myFirstProfile

Documentation

Further configuration is required, details for which can be found at the docs.

Support

If you use or enjoy this project, please give it a :star: or

Buy Me A Coffee

Disclaimer

This tool was written for educational purposes. I will not be responsible if you use this program in bad faith. By using it, you are accepting the Deezer Terms of Use. spotify_sync is not affiliated with Deezer.

Metadata

Release files for spot-sync 1.1.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for spot-sync 1.1.1
File Size Uploaded
spot_sync-1.1.1.tar.gz 28.7 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for spot-sync 1.1.1
File Interpreter ABI Platform
spot_sync-1.1.1-py3-none-any.whl Python 3 none any Details

Total release size: 63.9 kB

Release files / spot_sync-1.1.1.tar.gz

Download URL spot_sync-1.1.1.tar.gz
Size 28.7 kB
Tags Source
SHA-256 checksum
How to use checksums
bd0c636a15d1262fa0929096cbfc3a9d82abf3c09ac0601a5b94679682b88feb
BLAKE2b-256 checksum
How to use checksums
8139dd471ed07e71459041def60e08a4ef62da84da9d7d0286c8d0529edebcb3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/1.1.14 CPython/3.9.16 Linux/5.15.0-1031-azure

Release files / spot_sync-1.1.1-py3-none-any.whl

Download URL spot_sync-1.1.1-py3-none-any.whl
Size 35.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
105b699366c3b6ed6065a98b22601e601a710ea7fb0ff17ebf49407e635533f8
BLAKE2b-256 checksum
How to use checksums
e151e0b101ce54aca0b3a494573cb100a4270d6b3bddabfda9e4324956f8b83e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/1.1.14 CPython/3.9.16 Linux/5.15.0-1031-azure

Release history Release notifications | RSS feed

This release

1.1.1 This release

2 release files

1.1.0

2 release files

1.0.5

2 release files

1.0.4

2 release files

1.0.3

2 release files

1.0.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page