Skip to content

Export Spotify playlists to CSV directly from the terminal.

License

Notifications You must be signed in to change notification settings

donmerendolo/exportify-cli

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

19 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

exportify-cli


Export Spotify playlists to CSV directly from the terminal, inspired by pavelkomarov/exportify.

This tool can export all saved playlists, including liked songs.

Installation:

If you use Windows, you can use the binary in releases and skip steps 1 and 2.

  1. Clone this repository:
git clone https://github.com/donmerendolo/exportify-cli.git
  1. Install the required packages:
cd exportify-cli
pip install -r requirements.txt

(recommended to use a virtual environment)

  1. Set up Client ID, Client Secret and Redirect URI:

The first time you run exportify-cli, it will guide you through the setup:

1. Go to Spotify Developer Dashboard (https://developer.spotify.com/dashboard).
2. Create a new app.
3. Set a name and description for your app.
4. Add a redirect URI (e.g. http://localhost:8080).

Now after creating the app, press the Settings button on the upper right corner.
Copy the Client ID, Client Secret and Redirect URI and paste them below.

After running python exportify-cli.py (or exportify-cli.exe if you use Windows) the first time, it should keep you authenticated so you don't have to log in each time. If you wish to log out, simply remove the .cache file.


Tested on Windows with Python 3.11.9.

Usage:

usage: exportify.py [-h] [-a] [-p PLAYLISTS [PLAYLISTS ...]] [-o OUTPUT] [-l]

Export Spotify playlists to CSV.

options:
  -h, --help            show this help message and exit
  -a, --all             Export all playlists
  -p PLAYLISTS [PLAYLISTS ...], --playlists PLAYLISTS [PLAYLISTS ...]
                        Specify playlist names or IDs to export
  -o OUTPUT, --output OUTPUT
                        Specify the output directory (default: ./playlists/)
  -l, --list            List all playlists