Nothing Special   »   [go: up one dir, main page]

Skip to content

Generate some visualizations, stats, and a video and stats. Inspired by Spotify Wrapped.

License

Notifications You must be signed in to change notification settings

dbetm/spotify-wrapy

Repository files navigation

Spotify WraPy

English / Español

Enjoy your Spotify experience by generating a personalized video showcasing your streaming statistics. This video includes several insightful charts:

  • Plays per Hour, Month and Weekday: Visualize your listening habits throughout the day and your weekly and monthly listening patterns.
  • Top Songs, top artists and Peak Listening Hours: Discover your favorite tracks and when you listen to them most.

Additionally, the video provides comprehensive statistics, such as:

  • Total Play Time: Displayed in days, hours, and minutes.
  • Total Playbacks: The overall number of songs you've played.
  • Skipped Songs: Tracks you've skipped during playback.
  • Number of unique Artists and Songs: The diversity of your listening choices.

Video example

Download your data from Spotify

Updated: November 10th 2024

  • In the desktop app, go to the dropdown menu where your profile picture is and select the Account option.
  • Choose Account privacy.
  • In the Download your data section, pick the Account data option.
  • Click on Request data.
  • In 5-10 days, they'll send the data to your email (the one linked to your Spotify account).
  • Click the "Download" button. A .zip file will be downloaded.
  • Unzip the file and you'll get a folder called my_spotify_data with your data inside.

Setup project

Requirements

  • Git
  • Python 3.8 or later.

Download the repository

git clone https://github.com/dbetm/spotify-wrapy.git

Move to the repo folder

cd spotify-wrapy

Install required Python libraries

make install

Note: This will create a python virtual environment.


Create my Spotify WraPy video

  1. In the folder with your data, look for the files named something like StreamingHistory.json. It could be only one, example: StreamingHistory0.json.
  2. Copy those files and paste them into the spotify_data/ folder inside the repository.
  3. Activate the virtual environment, if you haven't done so already.
source .venv/bin/activate
  1. In the command line, run:
python3 app.py

It also supports Spanish language: python3 app.py --lang spanish. If this argument is not passed, it will default to English.

Alternatively, you can pass a start and end date to limit the data used, for example:

python3 app.py --lang english --start-date 2022-01-13 --end-date 2023-01-01

If you don't want to generate a video:

python3 app.py --lang english --no-video
  1. The results will be saved in a folder (named according to the datetime of execution) inside the output folder.

Important note: The timestamp provided by Spotify uses UTC time. By default, this project calculates the timezone of the computer it's run on; you can use a different timezone by running:

python3 app.py --tz America/New_York

You can find the list of timezones at Wikipedia.


Contribute

This is a non-profit project, made just for fun :) It is not associated with Spotify in any official way.

There are some possible improvements, including generating more charts or with customizable styles. Feel free to contribute:

  • Fork the repository.
  • Create a new branch from the main branch.
  • Push your branch and open a Pull Request targeting this repository.

About

Generate some visualizations, stats, and a video and stats. Inspired by Spotify Wrapped.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published