Open acs opened 6 years ago
The first step is to get the lyrics, and for that we are going to use Genius following our experience in:
First step is to understand how we can get the lyrics from genius. The approach is to use the search endpoint.
But if we want the songs for an artists we can just use:
GET /artists/:id/songs
We just need to find the artist id, which should be easy.
A nice introduction on howto use the Genius API. And maybe we can just reuse the work form John instead of improving the spoting lib.
Pretty cool stuff from MusicXMatch company: https://developer.musixmatch.com/showcase
And a dataset with 1 million songs to play with: https://labrosa.ee.columbia.edu/millionsong/musixmatch
Using Genius API we don't have information about the albums. And we need it to control when a song was published for historical analysis.
MusicxMatch returns the albums for an artist.
Spotify also provides the albums for an artist.
With the album we can get the songs, and after that, we can get the lyrics from Genius (or from MusicxMatch).
Next step is once we have the dataset with lyrics, let's organize them in classes or clusters.
And for doing that: https://nlpforhackers.io/recipe-text-clustering/
Using NLP, with NLTK probably, analyze the contents of the lyrics.