Syncedlyrics
Get an LRC format (synchronized) lyrics for your music
Install / Use
/learn @moehmeni/SyncedlyricsREADME
syncedlyrics
Get an LRC format (synchronized) lyrics for your music.
Installation
pip install syncedlyrics
Usage
CLI
syncedlyrics "SEARCH_TERM"
By default, this will prefer time synced lyrics, but use plaintext lyrics, if no synced lyrics are available.
To only allow one type of lyrics specify --plain-only or --synced-only respectively.
Available Options
| Flag | Description |
| --- | --- |
| -o | Path to save .lrc lyrics, default="{search_term}.lrc" |
| -p | Space-separated list of providers to include in searching |
| -l | Language code of the translation (ISO 639-1 format) |
| -v | Use this flag to show the logs |
| --plain-only | Only look for plain text (not synced) lyrics |
| --synced-only | Only look for synced lyrics |
| --enhanced | Searches for an Enhanced (word-level karaoke) format. If it isn't available, search for regular synced lyrics.
Python
# This simple
lrc = syncedlyrics.search("[TRACK_NAME] [ARTIST_NAME]")
# Or with options:
syncedlyrics.search("...", plain_only=True, save_path="{search_term}_1234.lrc", providers=["NetEase"])
# Get a translation along with the original lyrics (separated by `\n`):
syncedlyrics.search("...", lang="de")
# Get a word-by-word (karaoke) synced-lyrics if available
syncedlyrics.search("...", enhanced=True)
Providers
- Musixmatch
- ~~Deezer~~ (Currently not working anymore)
- Lrclib
- NetEase
- Megalobiz
- Genius (For plain format)
- ~~Lyricsify~~ (Broken duo to Cloudflare protection)
Feel free to suggest more providers or make PRs to fix the broken ones.
License
Citation
If you use this library in your research, you can cite as follows:
@misc{syncedlyrics,
author = {Momeni, Mohammad},
title = {syncedlyrics},
year = {2022},
publisher = {GitHub},
journal = {GitHub repository},
howpublished = {\url{https://github.com/moehmeni/syncedlyrics}},
}
