A command line tool to fetch lyrics from spotify and save it to lrc file. It can fetch both synced and unsynced lyrics from spotify. You can find API version at akashrchandran/spotify-lyrics-api.
Getting started
You will need a spotify account, free also works for some limited songs but it's nice to have premium.
Install with pip
pip3 install syrics
Upgrade with pip
pip3 install syrics --upgrade
To get more detailed installation guide please check wiki's installation page
Finding sp_dc
Syrics sp_dc cookie to authenticate against Spotify in order to have access to the required services.
The methods are explained in the wiki.
Config
When you run the program for the first time, it will directly create config and open editing.
To edit config
syrics --config
To reset config to default values
syrics --config reset
To open config in notepad or nano text editors
syrics --config open
After finding sp_dc you should edit config file and set sp_dc to the value you found.
Default values of config
{
"sp_dc": "",
"download_path": "downloads",
"create_folder": true,
"album_folder_name": "{name} - {artists}",
"play_folder_name": "{name} - {owner}",
"file_name": "{track_number}. {name}",
"synced_lyrics": true,
"force_download": false,
"force_synced": false
}
See wiki for more details about the format tag detailts in config keys.
Usage
Make sure you have set the congig before starting
1. Direct
syrics
Enter link: https://open.spotify.com/track/2eAvDnpXP5W0cVtiI0PUxV
It will ask for the link
2. Passing link as commandline argument
syrics https://open.spotify.com/track/2eAvDnpXP5W0cVtiI0PUxV
changing download folder command
syrics --directory ~/Music/songs/ https://open.spotify.com/track/2eAvDnpXP5W0cVtiI0PUxV
download current playing song on authorized account
syrics --user current-playing
downloading from user playlist
syrics --user playlist
To see available commands
syrics -h
3. Passing Folder path with music files (Experimental)
syrics /home/public_user/Music/songs
Use as a module
from syrics.api import Spotify
sp = Spotify("SP_DC here!")
sp.get_lyrics("28RQx5pH9T9LZXY02IheWc")