Skip to main content

Despot

version python downloads unlicense

ruff poetry pre-commit

A fast and simple client to free your music from that green streaming service.

despot demo

Setup

Install via pipx:

pipx install despot

Despot follows semver versioning. It is also available as container image codeberg.org/janw/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/janw/despot:v0
docker run --tty --rm codeberg.org/janw/despot:v0.7
docker run --tty --rm codeberg.org/janw/despot:v0.7.0
docker run --tty --rm codeberg.org/janw/despot:latest

Usage

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 --help

Notes

  • 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.

Disclaimer

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.

Metadata

Release files for despot 0.7.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for despot 0.7.0
File Size Uploaded
despot-0.7.0.tar.gz 14.0 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for despot 0.7.0
File Interpreter ABI Platform
despot-0.7.0-py3-none-any.whl Python 3 none any Details

Total release size: 31.3 kB

Release files / despot-0.7.0.tar.gz

Download URL despot-0.7.0.tar.gz
Size 14.0 kB
Tags Source
SHA-256 checksum
How to use checksums
2cbf480e92419b0aa81fce3bfbea5e58e5b320021980419a51133e97ce44098e
BLAKE2b-256 checksum
How to use checksums
a0e970b68615ab7805c78ea7a6574be25c50e92debaddf17c8bd195c9c23172d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/2.1.3 CPython/3.12.2 Darwin/24.6.0

Release files / despot-0.7.0-py3-none-any.whl

Download URL despot-0.7.0-py3-none-any.whl
Size 17.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
11bc7e9aa91779c344988b3478b90f8b65214f3a6c960f83719dab159ac377e1
BLAKE2b-256 checksum
How to use checksums
e32188fa6f889861dc785088b6bf06fb88c1446dddc6655bb175675fc1f0df2a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/2.1.3 CPython/3.12.2 Darwin/24.6.0

Release history Release notifications | RSS feed

This release

0.7.0 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page