Skip to content

enricobacis/lyricwikia

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

49 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

lyricwikia

Python API to get song lyrics from LyricWikia

https://travis-ci.org/enricobacis/lyricwikia.svg?branch=master

Description

LyricWikia is an online wiki-based lyrics database and encyclopedia. It used to provide full access to song lyrics via API, but the service has been discontinued.

This API scrapes the song web page and returns the lyrics. Please verify that your use complies with the LyricWikia terms of service.

Installation

The package lyricwikia is on PyPI, so you can install it using pip:

pip install lyricwikia

Otherwise download this repository and use the setup.py file:

python setup.py install

It is also avaliable on the AUR for Arch Linux users: python-lyricwikia. And in the GURU overlay for Gentoo Linux users as dev-python/lyricwikia: eselect repository enable guru && emerge --sync guru && emerge lyricwikia

Usage

You can use the lyrics command to look for a song lyrics.

usage: lyrics [-h] [--separator SEPARATOR] [--version] ARTIST SONG

Get lyrics of a song from LyricWikia

positional arguments:
ARTIST Artist name SONG Song title
optional arguments:
-h, --help show this help message and exit
--separator SEPARATOR
 line separator
--version show program's version number and exit

Example

$ lyrics 'Led Zeppelin' 'Stairway to heaven'
There's a lady who's sure all that glitters is gold
...

API

At the moment lyricwikia provides two APIs that are not officially already provided by the official APIs):

  • get_lyrics(artist, song, linesep='\n', timeout=None): returns a string
    that contains the lyrics of the song as provided by LyricWikia. If the lyrics is not found, the LyricsNotFound exception is raised.
  • get_all_lyrics(artist, song, linesep='\n', timeout=None): returns a list of all the lyrics versions of the song (e.g., both the kanji and the romaji versions if available). If the lyrics is not found, the LyricsNotFound exception is raised.
import lyricwikia
lyrics = lyricwikia.get_lyrics('Led Zeppelin', 'Stairway to heaven')

Used by

  • spotify-downloader: download Spotify playlists with albumart and meta-tags
  • vidify: watch Youtube music videos (and lyrics) for the currently playing Spotify songs