Skip to main content

A Spotipy-compatible wrapper using SpotAPI

Project description

PyPI - Downloads Downloads

SpotipyFree

A lightweight drop-in replacement for Spotipy without using the spotify api. This project was build because spotify removed access to its API for non-premium users. This project doesn't use ANY Spotify APIs.


Features

  • Drop-in style response compatible with spotipy

  • No Spotify account required

  • Returns playback data structured like the official Spotify API


Current Status

This project is experimental.

Currently implemented:

  • search()
  • track()
  • playlist()
  • playlist_items()
  • artist()
  • artist_albums()
  • album()
  • album_tracks()
  • current_user_recently_played() - must first run startRecentlyPlayedListener
  • current_user_saved_tracks()
  • current_user_saved_tracks_contains()
  • current_user_playlists()
  • current_playback()
  • current_user()
  • me()
  • seek_track()
  • next_track()
  • previous_track()
  • start_playback()
  • pause_playback()

Installation

Bash

pip install spotipyFree


Usage without login

from SpotipyFree import Spotify

sp = Spotify()

search = sp.search("Blinding Light - Weekend")
artist = sp.artist("3Bd1cgCjtCI32PYvDC3ynO")
artistAlbums = sp.artist_albums("3Bd1cgCjtCI32PYvDC3ynO", include_groups="album,single,compilation")
playlist = sp.playlist_items("6lnfkAgnVtNzvj8KScLSkj")
track = sp.track("67Hna13dNDkZvBpTXRIaOJ")
album = sp.album("4m2880jivSbbyEGAKfITCa")
albumTracks = sp.album_tracks("4m2880jivSbbyEGAKfITCa")

Usage with login

sp = Spotify()
sp.login()

status = spotapi.player.PlayerStatus(sp.user_auth)
sp.startRecentlyPlayedListener()
state = status.state.__dict__
saved = sp.current_user_saved_tracks()
me = sp.me()

This project is in no way affiliated with Spotify.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

spotipyfree-1.8.0.tar.gz (14.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

spotipyfree-1.8.0-py3-none-any.whl (15.2 kB view details)

Uploaded Python 3

File details

Details for the file spotipyfree-1.8.0.tar.gz.

File metadata

  • Download URL: spotipyfree-1.8.0.tar.gz
  • Upload date:
  • Size: 14.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.3

File hashes

Hashes for spotipyfree-1.8.0.tar.gz
Algorithm Hash digest
SHA256 2e37e0ba7d5787ffce5fa761ad4c2dab9b1669638ee7566a0147805797836ae4
MD5 596259c551a41bf71155c8acf8be5c1b
BLAKE2b-256 ff907995b6f991b68f6ebda5b554d1eae8159dfabbda10d2e1bacfc591a7f1f8

See more details on using hashes here.

File details

Details for the file spotipyfree-1.8.0-py3-none-any.whl.

File metadata

  • Download URL: spotipyfree-1.8.0-py3-none-any.whl
  • Upload date:
  • Size: 15.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.3

File hashes

Hashes for spotipyfree-1.8.0-py3-none-any.whl
Algorithm Hash digest
SHA256 e3bd1b24a3489b9b1ca059c5440882965c9bcc871d5c25c077e9a96dfa0c0884
MD5 966f4ad2f45ec7a6182f64ecc8f96322
BLAKE2b-256 d63dbd989596b1eaef24fa7b271e29c51bae152cc6a607ff12a7373e73c554c0

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page