A fast and simple client to free your music from that green streaming service.
Install via pipx:
pipx install despot
Despot follows semver versioning. It is also available as container image codeberg.org/drunkontee/despot
. Images are tagged as v1.2.3
, v1.2
, and v1
, as well as latest
pointing to the most recent version, for example:
docker run --tty --rm codeberg.org/drunkontee/despot:v0
docker run --tty --rm codeberg.org/drunkontee/despot:v0.6
docker run --tty --rm codeberg.org/drunkontee/despot:v0.6.0
docker run --tty --rm codeberg.org/drunkontee/despot:latest
Download songs like so:
despot https://open.….com/track/07ZCaJfuutIaoDxYrkdzQY
You can pass multiple URLs at once. Partial URLs (just the path) work, too:
despot /track/07ZCaJfuutIaoDxYrkdzQY
By default, despot will place files in ./downloads
. You can use --destination
to change the destination directory.
Use --help
to see all other available options:
- Despot does not transcode audio. Transcoding is terrible, so you'll have to do that yourself.
- Despot uses fixed pattern for naming files within the destination directory:
-
Singular Tracks:
{artist} - {title}.{ext}
-
Entire shows/podcasts and singular episodes:
{show}/{publish_time} - {o.title}.{ext}
-
Albums and entire arists:
{album_artist}/{album} ({album_year})/{disc:02d}-{track:02d} {title}.{ext}
-
Playlists:
{playlist_name}/{idx:03d} {artist_or_show} - {name}.{ext}
These are the only patterns. Deal with it.
-
Using this code to connect to the API of that green streaming service is probably forbidden by them, and downloading unencrypted files violates their TOS. You should not use this code. Pretty please with sugar on top.