Tool for downloading Spotify songs to MP3 - Full Metadata & Cover Art
Project description
Savify
Savify is a desktop application that converts and downloads songs from Spotify, YouTube, Soundcloud, Deezer and many other sites. Converting songs to MP3 with quality as high as 320 kb/s! The application will also scrape and apply id3V2 tags to all of your songs. Tags include title, artists, year, album and even cover-art!
Savify supports Spotify, YouTube, Soundcloud and Deezer playlists, with an added integrated search engine function so if you don’t have the link you can simply search for the song name and artist and Savify will download it!
As well as MP3, Savify can also download and convert to other file types. Inside the application, you can specify which format and quality you would like to download the song in for maximum compatibility across all of your devices. Available formats: MP3, AAC, FLAC, M4A, OPUS, VORBIS, and WAV. NOTE: Tags and cover-art will only be applied to songs downloaded in MP3 format.
Download for Windows
Download the latest release of Savify for Windows here
Windows Warning
FFMPEG
Savify relies on the open source FFMPEG library in order to convert and apply meta data to the songs it downloads. Please make sure FFMPEG is installed on your computer and added to the System PATH. Follow the tutorial here.
Playlists
To avoid the issus of authentication in order to download your personal playlists please make sure to set them to public. Otherwise Savify will not be able to scrape the song data from them.
Installation
To use Savify you can either use one of the pre-packed releases (which I recommend as you will not have to provide a Savify API key), or you can download the source code and run the module directly using the CLI.
Download the latest release (recommended)
Go here to download the latest Savify.exe then make sure you have FFMPEG downloaded and it added to your PATH as per the section above.
That’s it, you should be good to go! See some usage examples below.
Using the Python module CLI
pip install -U savify
Usage
NOTE: Currently Savify only supports Spotify URLs and search queries, however support for Spotify URIs will be added in the future.
Download Defaults:
type: track
quality: highest available
format: mp3
output: same directory as the Savify executable
group: no grouping
For more usage examples read the docs.
Single track
savify.exe -s "https://open.spotify.com/playlist/4IaabtEqdYDkjiDK2o97HE?si=hMMondhaTVuYEoNNS9axLw"
Playlist
NOTE: The playlist you wish to download must be public for Savify to find it.
savify.exe -s "https://open.spotify.com/track/0PX9O7QzWYClP6PPuIaomj?si=DVNoVOs0RFevg_c_RwxLkQ"
Album
savify.exe -s "https://open.spotify.com/album/4XJL9MdgCtvyCYpOotXO0s?si=I2yf_BKETQuFCyICawIbWA"
Searching (no URL)
NOTE: The search query function will try to find the most relevant result, however sometimes may return the wrong track. It is better to use the URL of the Spotify track if you know it.
savify.exe -s "Bru-C - You & I"
For Developers
If you want to try you hand at adding to Savify use the instructions here. From there you can make any additions you think would make Savify better.
Spotify Application
To develop and test a build of Savify you will need your own Spotify developer application to access their API. To do this sign up here. When you have make a new application and take note of your client id and secret.
Now you need to add 2 environments variables to your system:
SPOTIPY_CLIENT_ID
SPOTIPY_CLIENT_SECRET
To find out how to do this find a tutorial online for your specific operating system. Once you have done this make sure to restart your shell.
Credits
This package was created with Cookiecutter and the audreyr/cookiecutter-pypackage project template.
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
Built Distribution
Hashes for savify-0.1.0-py2.py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0cdc70a7af8b4154bf1244a4940fac442b52a2b1f05ad9a0a0e14677f16ce3d7 |
|
MD5 | ae7a110d035298a5eaece09bafad3cf1 |
|
BLAKE2b-256 | 6b54aa5f25616f131df36c9a3c15b2ca0dd945861710278dc49cdc9d212a3772 |