Release notes
3.6.4 (2025-05-31)
Changed
Added a DeprecationWarning to the
Song,Artist, andAlbumclasses. TheGeniusclient will be removed from these classes in a future release.Added a DeprecationWarning to the
Trackclass. This class will be removed in a future release. Its functionality will be incorporated into theSongclass.Added a DeprecationWarning to the
Statsclass. This class will be removed in a future release.Added a FutureWarning to the
Songconstructor. Its signature will change toSong(lyrics, body)instead ofSong(client, json_dict, lyrics).
3.6.3 (2025-05-31)
Changed
Fixed a bug where
Genius.search_artist()wouldn’t obey themax_songsparameter. Now it will return the correct number of songs as specified.Fixed typos and removed random unicode characters.
3.0.0 (2021-02-08)
New
All requests now go through the
Senderobject. This provides features such as retriesgenius.retriesand handling HTTP and timeout errors. For more info have a look at the guide about request error handling.Added
OAuth2class to help with OAuth2 authentication.Added
PublicAPIclass to allow accessing methods of the public API (genius.com/api). Check this page for a list of available methods.Added the
Albumtype and thegenius.search_album()method.Added the
genius.tag()method to get songs by tag.All API endpoints are now supported (e.g.
upvote_annotation).New additions to the docs.
Changed
GENIUS_CLIENT_ACCESS_TOKENenv var has been renamed toGENIUS_ACCESS_TOKEN.genius.client_access_tokenhas been renamed togenius.access_token.genius.search_song()will also acceptsong_id.Lyrics won’t be fetched for instrumental songs and their lyrics will be set to
"". You can check to see if a song is instrumental usingSong.instrumental.Renamed all interface methods to remove redundant
get_(genius.get_songis nowgenius.song).Renamed the lyrics method to
genius.lyrics()to allow use by users. It accepts song URLs and song IDs.Reformatted the types. Some attributes won’t be available anymore. More info on the types page.
save_lyrics()will save songs withutf8encoding whenextension='txt'.Using
Genius()will check for the env varGENIUS_ACCESS_TOKEN.
Other (CI, etc)
Bumped
Sphinxto 3.3.0
2.0.2 (2020-09-26)
Added
Added optional
ensure_asciiparameter to the following methods:Genius.save_artists,Song.save_lyrics,Song.to_json,Artist.save_lyricsandArtist.to_json
2.0.1 (2020-09-20)
Changed
Genius.lyrics()- Switched to using regular expressions to find thenew_div(154).