How It Works¶
LyricsGenius interfaces with Genius.com in two different ways: the authenticated developer API and the unauthenticated public API.
Developer API¶
The developer API is available through
api.genius.com, and provides access to song, artist,
and annotation search amongst other data sources. The endpoints within the
developer API require a (free) access token. The developer API is accessed
through the API
class.
Public API¶
The public API can be accessed without authentication and is essentially the
same service end-users access through the browser. The public API
can be called at genius.com/api. These public API
methods are available through the PublicAPI
class.
Genius Class¶
The Genius class is a high-level interface for the content on
Genius.com, inheriting from both the API
and PublicAPI
classes. The Genius class provides methods from the two API classes
mentioned above as well as useful methods like Genius.search_song()
for accessing song lyrics and more.
Lyrics¶
Genius has legal agreements with music publishers and considers the lyrics on their website to be a legal property of Genius, and won’t allow you to re-use their lyrics without explicit licensing. They even sued Google on grounds of stolen lyrics, asking for $50 million in damages, but to no avail. So it shouldn’t come as a surprise if they don’t provide lyrics in calls to the API. So how does LyricsGenius get the lyrics?
LyricsGenius uses a web-scraping library called Beautiful Soup to scrape lyrics from the song’s page on Genius. Scraping the lyrics in this way violates Genius’ terms of service. If you intend to use the lyrics for personal purposes, that shouldn’t be cause for trouble, but other than that, you should inquire what happens when you violate the terms this way. As a reminder, LyricsGenius is not responsible for your usage of the library.