Spotify Music Downloader - Download music from Spotify
Project description
sfotipy
Spotify Music Downloader - Download music from Spotify playlists, albums, and tracks as MP3 with metadata, cover art, and watermark.
made by Ren - Discord: wtf_renn
Installation
pip install sfotipy
Requirements
- Python 3.9+
- FFmpeg installed and in your PATH
Usage
Interactive Mode
sfotipy
Opens a menu to configure settings and download music.
Direct Mode
sfotipy https://open.spotify.com/track/4iV5W9uYEdYUVa79Axb7Rh
sfotipy https://open.spotify.com/playlist/37i9dQZF1DXcBWIGoYBM5M
sfotipy https://open.spotify.com/album/1DFixLWuPmc35TjJb6Wqeq
Options
| Flag | Description |
|---|---|
-p, --path |
Download path |
-q, --quality |
Audio quality: 0 (auto), 128, 192, 256, 320 kbps |
-s, --source |
Audio source: auto, soundcloud, youtube-music, youtube |
-l, --lyrics |
Download lyrics |
-o, --output-template |
Filename template (e.g. "{track_number}. {artist} - {title}") |
-w, --workers |
Number of parallel download workers (1-8, default: 3) |
--overwrite |
Re-download existing tracks |
--dry-run |
Preview what would be downloaded without downloading |
-V, --verbose |
Enable verbose/debug output |
-v, --version |
Show version |
Features
- Download tracks, playlists, albums, and episodes from Spotify
- Automatic metadata (title, artist, album, cover art)
[Sfotipy]watermark in filename- Multiple audio sources with fallback (YouTube Music → YouTube → SoundCloud)
- Parallel downloads with configurable worker count
- Real-time progress display with per-song progress bars
- ESC to pause with continue/exit option
- Lyrics download support (synced + plain)
- Resume interrupted downloads
- Low-quality track detection with per-track choices
- Automatic update checking from PyPI
License
MIT
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
sfotipy-1.5.0.tar.gz
(38.0 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
sfotipy-1.5.0-py3-none-any.whl
(38.3 kB
view details)
File details
Details for the file sfotipy-1.5.0.tar.gz.
File metadata
- Download URL: sfotipy-1.5.0.tar.gz
- Upload date:
- Size: 38.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
561782288a703c192faccaccbf1578a0a5e2880b5347543268d768165927966b
|
|
| MD5 |
eb735a17187d15b13ac16676a7a18398
|
|
| BLAKE2b-256 |
97bfcdc29fdd68d92812027b60d70b15408cd42ad51e966d2d685827fca58cd6
|
File details
Details for the file sfotipy-1.5.0-py3-none-any.whl.
File metadata
- Download URL: sfotipy-1.5.0-py3-none-any.whl
- Upload date:
- Size: 38.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
35e22405b387ba99107583111f7554145f8fb14e91740b83c88708e9b6065de7
|
|
| MD5 |
2d61653f5380862bd9286572ec52ac8b
|
|
| BLAKE2b-256 |
ab3348404d1865cc5b56383c8160bf1f8ef1ef56552f3654fa888f8ee8d0a071
|