Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

erinxocon/spotify-local

Repository files navigation

Spotify has replaced most of this functionality with the web api. This project is no longer maintained!

Spotify-Local: A multi-platform API to control the local Spotify Client

https://img.shields.io/pypi/v/spotify-local.svg?maxAge=2592000 https://img.shields.io/pypi/l/spotify-local.svg?maxAge=2592000

Spotify-Local library is designed to make controlling the Spotify client on your local machine possible! This is a wrapper for the web helper process which exposes a simple api. Spotify-Local is inspired by SpotifyAPI-NET. This library allows you to perform simple actions quickly, or listen to events and register callbacks when a song changes, or the pause button is pushed.

When using this library you automatically get:

  • The ability to play/pause the current song
  • The ability to change tracks
  • You can register callbacks and listen for events when the state of Spotify changes
  • A nice context manager api using with

Installation

$ pipenv install spotify-local

Only Python 3.3+ is supported.

Tutorial & Usage

Connect to the Spotify Client (Spotify must be open to do this):

>>> from spotify_local import SpotifyLocal
>>> with SpotifyLocal() as s:
 pass

Pause the Spotify Client:

>>> with SpotifyLocal() as s:
 s.pause()

Grab the current state of the Spotify client, including now playing information:

>>> with SpotifyLocal() as s:
 print(s.get_current_status())

Play a playlist, song, album, artist, etc using a Spotify uri link:

>>> with SpotifyLocal() as s:
 s.playURI('spotify:track:0thLhIqWsqqycEqFONOyhu')

Register a callback and listen for events:

>>> from spotify_local import SpotifyLocal
>>> s = SpotifyLocal()
>>> @s.on('track_change')
>>> def test(event):
... print(event)
>>> s.listen(blocking=False)
>>> print("Do more stuff because that runs in the background")

License

MIT

TODO

  • Create an async verion of the spotify controller class

About

Local control of the Spotify Client in python

Resources

License

Stars

Watchers

Forks

Packages

Contributors

Languages

AltStyle によって変換されたページ (->オリジナル) /