A light weight Python library for the Spotify Web API
Go to file
Nick 87fe473672
Allow open_browser to be set on creation of auth_manager (SpotifyOAuth/SpotifyPKCE) (#574)
* Fix plamere/spotipy#560

* Adhere to code style

* Update CHANGELOG.md for changes in 939f869bbc

* open_browser passed to get_auth_response should take precedence over the same argument in the constructor

* Update FAQ

* Add information about headless auth

* Add headless auth example
2020-09-12 12:14:08 +01:00
.github Enforce changelog (#564) 2020-08-29 11:37:21 +01:00
docs Deprecate util.prompt_for_user_token() 2020-06-14 18:01:14 +01:00
examples Allow open_browser to be set on creation of auth_manager (SpotifyOAuth/SpotifyPKCE) (#574) 2020-09-12 12:14:08 +01:00
spotipy Allow open_browser to be set on creation of auth_manager (SpotifyOAuth/SpotifyPKCE) (#574) 2020-09-12 12:14:08 +01:00
tests Made cache_path and username optional (#567) 2020-08-30 23:59:38 +01:00
.gitignore Update recommendations doc, fixes #290 2020-02-22 13:08:26 +00:00
CHANGELOG.md Allow open_browser to be set on creation of auth_manager (SpotifyOAuth/SpotifyPKCE) (#574) 2020-09-12 12:14:08 +01:00
CONTRIBUTING.md Bump to 2.14.0 (#565) 2020-08-29 13:00:49 +01:00
FAQ.md Allow open_browser to be set on creation of auth_manager (SpotifyOAuth/SpotifyPKCE) (#574) 2020-09-12 12:14:08 +01:00
LICENSE.md Bump to 2.6.0 2020-01-12 14:42:52 +00:00
MANIFEST.in Release with CHANGELOG + LICENSE, solves #454 2020-03-18 20:34:22 +00:00
README.md Made cache_path and username optional (#567) 2020-08-30 23:59:38 +01:00
setup.py Bump to 2.15.0 2020-09-08 10:57:07 +01:00
tox.ini Linting of core subpackage + clean up imports (#437) 2020-02-09 12:59:20 +00:00

Spotipy

A light weight Python library for the Spotify Web API

Tests Documentation Status

Documentation

Spotipy's full documentation is online at Spotipy Documentation.

Installation

pip install spotipy

or upgrade

pip install spotipy --upgrade

Quick Start

A full set of examples can be found in the online documentation and in the Spotipy examples directory.

To get started, install spotipy and create an app on https://developers.spotify.com/. Add your new ID and SECRET to your environment:

Without user authentication

import spotipy
from spotipy.oauth2 import SpotifyClientCredentials

sp = spotipy.Spotify(auth_manager=SpotifyClientCredentials(client_id="YOUR_APP_CLIENT_ID",
                                                           client_secret="YOUR_APP_CLIENT_SECRET"))

results = sp.search(q='weezer', limit=20)
for idx, track in enumerate(results['tracks']['items']):
    print(idx, track['name'])

With user authentication

import spotipy
from spotipy.oauth2 import SpotifyOAuth

sp = spotipy.Spotify(auth_manager=SpotifyOAuth(client_id="YOUR_APP_CLIENT_ID",
                                               client_secret="YOUR_APP_CLIENT_SECRET",
                                               redirect_uri="YOUR_APP_REDIRECT_URI",
                                               scope="user-library-read"))

results = sp.current_user_saved_tracks()
for idx, item in enumerate(results['items']):
    track = item['track']
    print(idx, track['artists'][0]['name'], "  ", track['name'])

Reporting Issues

For common questions please check our FAQ.

You can ask questions about Spotipy on Stack Overflow. Dont forget to add the Spotipy tag, and any other relevant tags as well, before posting.

If you have suggestions, bugs or other issues specific to this library, file them here. Or just send a pull request.