Skip to main content

WrapperSpotify

This is light weight python wrapper for the spotify api. Ligh weight as it doesn't currently expose methods for all the endpoint functionality provided by sportify, just a few. This wrapper client uses the client credential workflow hence does not expose methods for any fuctionality that require user scope or authorization(yet).

Features

  • Handles token generation for you
  • Automatically refreshes tokens if they expire
  • Exposes methods to allow you to query the sportify api easily

Usage

  • Install with pip
pip install WrapperSpotify

search for artist

  • create a dictionary with client credentials
  • initialize client object
  • call method with artist name
    import WrapperSpotify 
    credentials = {
        "ClientID":os.getenv("ClientID"),
        "ClientSecret":os.getenv("ClientSecret")
    }

    client = WrapperSpotify.Client(credentials)
    results = client.artist_search("artist name")
    

The artist_search method takes some optional arguments

  • filter set to true by default. filters out the results returned from api inti a smaller size. providing only some info such as artist id, profile , images etch when set to false , results is not filtered and giant results from api is returned to you

results = client.artist_search("artist name", filter=False)

  • limit set to 1 by default so results for only one artist is returned. You can increase range of results returned by increasing it . check spotify api docs for detailed explanation

results = client.artist_search("artist name", Limit=5) will return results for 5 differents artist which matches your artist name argument

search for track

  • create a dictionary with client credentials
  • initialize client object
  • call method with track name
import WrapperSpotify
credentials = {
        "ClientID":os.getenv("ClientID"),
        "ClientSecret":os.getenv("ClientSecret")
    }

    client = WrapperSpotify.Client(credentials)
    results = client.track_search("track name")
    

The track_search method takes some optional arguments

  • filter set to true by default. filters out the results returned from api inti a smaller size. providing only some info such as artist id, profile , images etch when set to false , results is not filtered and giant results from api is returned to you

results = client.artist_search("artist name", filter=False)

  • limit set to 1 by default so results for only one artist is returned. You can increase range of results returned by increasing it . check spotify api docs for detailed explanation

results = client.artist_search("artist name", Limit=5)

  • create a dictionary with client credentials
  • initialize client object
  • call method with artist id
    import WrapperSpotify
    credentials = {
        "ClientID":os.getenv("ClientID"),
        "ClientSecret":os.getenv("ClientSecret")
    }

    client = WrapperSpotify.Client(credentials)
    results = client.get_related_artists("artist id")
    

check api docs for detailed explanation

search for track recommendations

  • create a dictionary with client credentials
  • initialize client object
  • call method with dictionary containing query parameter keys and their values
    import WrapperSpotify
    credentials = {
        "ClientID":os.getenv("ClientID"),
        "ClientSecret":os.getenv("ClientSecret")
    }

    client = WrapperSpotify.Client(credentials)

    options =  {
        "seed_artists":"5K4W6rqBFWDnAN6FQUkS6x",
        "seed_genres":"alt-rock",
        "seed_tracks":"6MXXY2eiWkpDCezVCc0cMH,"

    }

    results = client.get_recommendations(options)
    

seed_artists,seed_genres and seed_tracks are required parameters for this endpoint and have to be added or an exception will be thrown. you can specify other parameters to filter recommendations by . check api docs

search for available genres

  • create a dictionary with client credentials
  • initialize client object
    import WrapperSpotify
    credentials = {
        "ClientID":os.getenv("ClientID"),
        "ClientSecret":os.getenv("ClientSecret")
    }

    client = WrapperSpotify.Client(credentials)
    results = client.get_avilable_genres()
    

check api docs for detailed explanation

Metadata

Release files for WrapperSpotify 1.0.6

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for WrapperSpotify 1.0.6
File Size Uploaded
WrapperSpotify-1.0.6.tar.gz 4.8 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for WrapperSpotify 1.0.6
File Interpreter ABI Platform
WrapperSpotify-1.0.6-py3-none-any.whl Python 3 none any Details

Total release size: 9.8 kB

Release files / WrapperSpotify-1.0.6.tar.gz

Download URL WrapperSpotify-1.0.6.tar.gz
Size 4.8 kB
Tags Source
SHA-256 checksum
How to use checksums
7633049f24fca73142d850df351d0af40b84289b9d3998ddfe889e99ccadaaf3
BLAKE2b-256 checksum
How to use checksums
6b27a87f971ed79dcca48fc5c61b22c6e9f8e4e7a5fdb3c0d7e2ee9016a66172
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.11.1

Release files / WrapperSpotify-1.0.6-py3-none-any.whl

Download URL WrapperSpotify-1.0.6-py3-none-any.whl
Size 5.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
6e33df2b1014b1c9f067ea36298f2c2bf31be0c25057d86676fdb719a38a635d
BLAKE2b-256 checksum
How to use checksums
0ff544ed02fd1c28331af007a793a4fb495c8bd8d9eb4bd38fe5cba3a3e134c3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.11.1

Release history Release notifications | RSS feed

This release

1.0.6 This release

2 release files

1.0.5

2 release files

1.0.4

2 release files

1.0.3

2 release files

1.0.1

2 release files

1.0.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page