Communicate with the Spotify's web helper process to control some basic aspects of spotify
Project description
Spotify-Local: A multi-platform API to control the local Spotify Client
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
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for spotify_local-0.3.1-py2.py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3b90bd443ffd7e1e016ac2fc000097a41d03a5ff0f4fd2ddf8386640a3e7fc35 |
|
MD5 | 6b4b1a309274634becb661f30e32b980 |
|
BLAKE2b-256 | f3c50d3cf6258ffcc990f42ab79b6974bec65873f8cff7c9c7c9e1b3497b1911 |