Skip to main content
File added late

1 file was added to this release more than 14 days after its initial publication. Inspect the release files before installing.

spotish

download tracks and playlists on spotify;

install

install spotish with pip:

pip install spotish

usage

to use spotish, you need to create a spotify application:

  1. go to https://developer.spotify.com/dashboard/applications and log in;

  2. click create a client id;

  3. fill in any name and description, then choose desktop app;

  4. on next page, when asked are you developing a commercial integration?, choose no;

  5. on next page, tick all boxes and click submit;

  6. now the app is created; the app page lists its client id and client secret, which will be used when you run spotish; we also need a redirect uri, so click edit settings;

  7. add http://localhost/callback/ in redirect uris; this uri will be used when you run spotish;

  8. click save;

now we have a spotify username, a client id, a client secret and a redirect uri;

download tracks

to download saved tracks into the default out dir:

spotish --user {username} \
    --client-id {client_id} --client-secret {client_secret} \
    --redirect-uri {redirect_uri} \
    tracks

on first run, this will open a web browser and ask you to enter the redirect uri to authenticate; simply follow the instructions; this will generate a hidden cache file named .cache-{username} in current dir, containing spotify web api access token; later runs of spotish dont need authentication until the access token expires;

tracks are organized by their albums; both albums and tracks are named after their uuids; an album uuid contains total tracks in album, album uri and album name; a track uuid contains track number within the album, track uri and track name; album and track uris already guarantee uniqueness; however, uuids contain more information and are easier to visualize; by using uuids, tracks within an album are automatically sorted by their track numbers, which looks very nice;

to download saved tracks with more complete metadata and helpful progress text:

spotish --user {username} \
    --client-id {client_id} --client-secret {client_secret} \
    --redirect-uri {redirect_uri} \
    --output {dir} \
    --album-image --track-preview \
    --verbose \
    tracks

download playlists

to download saved playlists, use command playlists instead of tracks:

spotish --user {username} \
    --client-id {client_id} --client-secret {client_secret} \
    --redirect-uri {redirect_uri} \
    --output {dir} \
    --playlist-image --track-preview \
    --verbose \
    playlists

tracks are organized by their playlists, not albums; both playlists and tracks are named after their uuids; a playlist uuid contains playlist index, playlist uri and playlist name; a track uuid contains track index within the playlist, track uri and track name;

depend

spotish depends on:

license

Copyright (c) 2012-2018 Cyker Way

This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program. If not, see https://www.gnu.org/licenses/.

Metadata

Release files for spotish 1.2.5

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

File added late

1 file was uploaded more than 14 days after the first file in this release.

While project maintainers occasionally add legitimate files to an existing release, late additions can also indicate a security compromise.

We recommend inspecting the release files before installing.

Source distribution (sdist)

Source distribution for spotish 1.2.5
File Size Uploaded Provenance
spotish-1.2.5.tar.gz 19.4 kB Without provenance Details

Built distribution (wheel)

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

Total release size: 37.3 kB

Release files / spotish-1.2.5.tar.gz

Download URL spotish-1.2.5.tar.gz
Size 19.4 kB
Tags Source
SHA-256 checksum
How to use checksums
ce0a1ce024dffea1d9cb7afeed72b65211ba31fff4e5fe2277756603e8358ce6
BLAKE2b-256 checksum
How to use checksums
8b8a1c21ffbd8ac2f14f4bb89c86b17e5a3f63917844ace4f3302237aa7c924e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.12.1 pkginfo/1.5.0.1 requests/2.20.0 setuptools/40.6.3 requests-toolbelt/0.8.0 tqdm/4.29.1 CPython/3.7.2

Release files / spotish-1.2.5-py3-none-any.whl

File added late

This file was uploaded more than 14 days after the first file in this release.

While project maintainers occasionally add legitimate files to an existing release, late additions can also indicate a security compromise.

We recommend inspecting the release file before installing.

Download URL spotish-1.2.5-py3-none-any.whl
Size 17.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
46313cd9b3bee01322b3b5a115c9ad17dce0859d854216dbb8b83eb6fa7e186c
BLAKE2b-256 checksum
How to use checksums
1bdbc6b5ea39bdc929cd5ba447e0eadc3e8da771daf80a50a1d9e7a8e451ffed
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.3.0 pkginfo/1.6.1 requests/2.25.1 setuptools/41.6.0 requests-toolbelt/0.9.1 tqdm/4.55.1 CPython/3.9.0b1

Security for spotish 1.2.5

Upload timing

File added late

1 file was uploaded more than 14 days after the first file in this release.

While project maintainers occasionally add legitimate files to an existing release, late additions can also indicate a security compromise.


Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

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