Skip to content

Spotify playlist generator using sentiment analysis on personal journal/diary entry data.

Notifications You must be signed in to change notification settings

sair770/Audio-TheraPy

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

22 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Audio TheraPy

About

Spotify playlist generator using sentiment analysis on personal journal/diary entry data. Requires Spotify Premium to use; I've hidden my user credentials in but if you'd like to run this project, download the below dependencies and visit https://developer.spotify.com/ to generate your personal tokens. See the "Example" section below for a demonstration.


Primary Libraries Used

  • Spotipy
    • Access Spotify API for user history and playlist generation.
  • NLTK
    • Valence Aware Dictionary and sEntiment Reasoner (VADER) for sentiment analysis of user text entry.
  • Pandas
    • Storage of scraped song data and Boolean indexing for quick recall.

Contents

  • sentiment.py
    • Evaluates the sentiment of a given body of text.
  • spotify_scraper.py
    • Scrapes Spotify API for song information and contains details in a pd.DataFrame.
  • audio_thera.py
    • main() function that runs scripts developed in the other .py files.
  • secrets.py (.gitignore)
    • Contains user credentials including username, scope, client_id, client_secret, and redirect_uri for the app.

Example

TODO: Add screen recording of script in action (include arg from command line, Spotify API auth, and resulting playlist)


Next Steps

  • Host application on Flask or Django.
  • Create SQLite database to store sentiment analysis results / recommended songs.
  • Improve method of analyzing song sentiment through Spotify's metrics.

License

TODO: Add MIT license data here.

About

Spotify playlist generator using sentiment analysis on personal journal/diary entry data.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 100.0%