A light weight Python library for the Spotify Web API
Go to file
IdmFoundInHim df99eab61c
Refinement of PKCE (#566)
* Improve SpotifyPKCE.get_authorization_url

Ensure that a code challenge has been generated for the auth url

* Clean up namespace in SpotifyPKCE._get_auth_response_interactive

* Duplicate parse_auth_response_url into SpotifyPKCE

* Update SpotifyPKCE security advisory

* Update changelog for PKCE refinements
2020-08-30 11:01:05 +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 A few updates to the example app (#540) 2020-07-30 23:05:47 +01:00
spotipy Refinement of PKCE (#566) 2020-08-30 11:01:05 +01:00
tests Add category info (#561) 2020-08-27 20:49:56 +01:00
.gitignore Update recommendations doc, fixes #290 2020-02-22 13:08:26 +00:00
CHANGELOG.md Refinement of PKCE (#566) 2020-08-30 11:01:05 +01:00
CONTRIBUTING.md Bump to 2.14.0 (#565) 2020-08-29 13:00:49 +01:00
FAQ.md Bump to 2.14.0 (#565) 2020-08-29 13:00:49 +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 Bump to 2.14.0 (#565) 2020-08-29 13:00:49 +01:00
setup.py Bump to 2.14.0 (#565) 2020-08-29 13:00:49 +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",
                                               username="YOUR_SPOTIFY_USERNAME",
                                               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.