Checks my activity on Spotify and sends me a daily email with the songs I played yesterday.
Uses Poetry for dependency management.
poetry install
make check
Requires Spotify OAuth token and Mailgun apikey.
export SPOTIPY_CLIENT_ID=<spotipy-client-id>
export SPOTIPY_CLIENT_SECRET=<spotipy-client-secret>
export SPOTIPY_REDIRECT_URI=<spotipy-redirect-uri>
export SPOTIFY_REFRESH_TOKEN=<spotify-refresh-token>
export MAILGUN_APIKEY=<mailgun-apikey>
export MAILGUN_URL=<mailgun-url>
export EMAIL_RECIPIENT=<email-recipient>
export EMAIL_SENDER=<email-sender>
make job
To run without email (prints Spotify results to stdout):
poetry run python digester/spotify.py
See Spotipy instructions
to get the secrets. Scope user-read-recently-played
is needed.
Spotipy can open a browser, where you need to sign in to Spotify,
and it stores the tokens in .cache
file.
Then use the relevant values as env vars.
To automate daily runs, GitHub Actions may be used as in nightly.yaml. Note the GitHub project secrets must be properly set.