Welcome to blitzr’s documentation!¶
Blitzr Python Client¶
This package makes it easy to call the Blitzr API. You can refer to the official Blitzr API reference to have more informations.
Getting Started¶
You just need to instanciate a BlitzrClient and call its methods.
Example: |
---|
>>> from blitzr import BlitzrClient
>>>
>>> blitzr = BlitzrClient(your_api_key)
>>>
>>> eminem = blitzr.get_artist(slug='eminem')
>>> print eminem.get('real_name')
Marshall Bruce Mathers III
You can call list APIs by two methods: with or without a generator.
The basic methods like get_artist_releases returns a list or X desired releases from the given artist. You will have to manage the pagination by yourself with the start and limit parameters (defaults are start=0 and limit=10).
Example: |
---|
>>> releases = blitzr.get_artist_releases(slug='eminem')
>>> for release in releases:
>>> print release.get('name')
The Vinyl LPs
MNEP
Live From Comerica Park
Phenomenal
Detroit Vs. Everybody
Shady Classics Mixtape
Headlights
Guts Over Fear
The Monster
Berzerk
The second option will make the pagination easier. You can call the iter_artist_releases to get a generator. This generator will call automatically the API when you reach the end of the current items list. So you just have to iterate on this generator to get all the documents to retrieve. The parameter limit here is the number of elements to retrieve by query in the generator.
Example: |
---|
>>> releases = blitzr.iter_artist_releases(slug='eminem')
>>> for release in releases:
>>> print release.get('name')
The Vinyl LPs
MNEP
Live From Comerica Park
Phenomenal
Detroit Vs. Everybody
Shady Classics Mixtape
Headlights
Guts Over Fear
The Monster
Berzerk
Rap God
Survival
The Marshall Mathers LP 2
E
Shady Unit
Eminem The Marshall Mathers
... and more until the end
Blitzr client:¶
-
class
blitzr.client.
BlitzrClient
(api_key)¶ Bases:
object
This is the only class you need to call the Blitzr API.
-
BASE_URL
= 'https://api.blitzr.com%s'¶
-
get_artist
(uuid=None, slug=None, extras=[], extras_limit=None)¶ Get an Artist
Parameters: Returns: Artist
Return type: dictionary
-
get_artist_aliases
(uuid=None, slug=None)¶ Get aliases for an Artist
Parameters: Returns: Artists
Return type:
-
get_artist_bands
(uuid=None, slug=None, start=0, limit=10)¶ Get an Artist’s bands
Parameters: Returns: Artists
Return type:
-
get_artist_biography
(uuid=None, slug=None, lang=None, license=None, source=None, html_format=False, url_scheme=None)¶ Get an Artist’s biography
Parameters: - uuid (string) – The Artist UUID
- slug (string) – The Artist Slug
- lang (string) – Biography language (if available) (fr|en)
- source (string) – Biography source (if available) (discogs|wikipedia)
- license (string) – Biography source (if available) (cc0|cc-by-sa)
- html_format (bool) – True for HTML markup in the biography
- url_scheme (string) – Urlencoded links format
Returns: Biography
Return type:
-
get_artist_events
(uuid=None, slug=None, start=0, limit=10)¶ Get an Artist’s events
Parameters: Returns: Events
Return type:
-
get_artist_harmonia
(uuid=None, slug=None)¶ Get an Artist’s identifiers in other databases.
Parameters: Returns: Identifiers
Return type: dictionary
-
get_artist_members
(uuid=None, slug=None, start=0, limit=10)¶ Get a Band’s members
Parameters: Returns: Artists
Return type:
Get related Artists
Parameters: Returns: Artists
Return type:
-
get_artist_releases
(uuid=None, slug=None, start=0, limit=10, release_type=None, release_format=None, credited=False)¶ Get an Artist’s releases
Parameters: - uuid (string) – The Artist UUID
- slug (string) – The Artist Slug
- start (int) – Offset for pagination
- limit (int) – Limit for pagination
- release_type (string) – Release type (official|unofficial|all)
- release_format (string) – Release format (album|single|live|all)
- credited (bool) – Releases where artist is credited (not main releases)
Returns: Releases
Return type:
-
get_artist_similar
(uuid=None, slug=None, filters={}, start=0, limit=10)¶ Get similar Artists
Parameters: Returns: Artists
Return type:
-
get_artist_summary
(uuid=None, slug=None)¶ Get an Artist’s summary
Parameters: Returns: Summary
Return type: dictionary
-
get_artist_websites
(uuid=None, slug=None)¶ Get Artist’s websites
Parameters: Returns: Websites
Return type:
-
get_event
(uuid=None, slug=None)¶ Get an Event
Parameters: Returns: Event
Return type: dictionary
-
get_harmonia_artist
(service_name=None, service_id=None)¶ Get an Artist from the Blitzr API with a external service ID.
Parameters: - service_name (string) – The service name
- service_id (string | int) – The Artist’s ID in the external service
Returns: Artist
Return type: dictionary
-
get_harmonia_label
(service_name=None, service_id=None)¶ Get a Label from the Blitzr API with a external service ID.
Parameters: - service_name (string) – The service name
- service_id (string | int) – The Label’s ID in the external service
Returns: Label
Return type: dictionary
-
get_harmonia_release
(service_name=None, service_id=None)¶ Get a Release from the Blitzr API with a external service ID.
Parameters: - service_name (string) – The service name
- service_id (string | int) – The Release’s ID in the external service
Returns: Release
Return type: dictionary
-
get_harmonia_search_by_source
(source_name=None, source_id=None, source_filters=[], strict=False)¶ Get a Track from the Blitzr API with a external source ID.
Parameters: Returns: Track
Return type:
-
get_label
(uuid=None, slug=None, extras=[], extras_limit=None)¶ Get a Label
Parameters: Returns: Label
Return type: dictionary
-
get_label_artists
(uuid=None, slug=None, start=0, limit=10)¶ Get a Label’s artists
Parameters: Returns: Labels
Return type:
-
get_label_biography
(uuid=None, slug=None, html_format=False, url_scheme=None)¶ Get a Label’s biography
Parameters: Returns: Biography
Return type: dictionary
-
get_label_harmonia
(uuid=None, slug=None)¶ Get a Label’s identifiers in other databases.
Parameters: Returns: Identifiers
Return type: dictionary
-
get_label_releases
(uuid=None, slug=None, release_format=None, start=0, limit=10)¶ Get a Label’s releases
Parameters: Returns: Releases
Return type:
-
get_label_similar
(uuid=None, slug=None, filters={}, start=0, limit=10)¶ Get similar Labels
Parameters: Returns: Labels
Return type:
-
get_label_websites
(uuid=None, slug=None)¶ Get Label’s websites
Parameters: Returns: Websites
Return type:
-
get_radio_artist
(uuid=None, slug=None, limit=10)¶ Get an Artist’s Radio, a List of Track from the given Artist discography.
Parameters: Returns: Tracks
Return type:
-
get_radio_artist_similar
(uuid=None, slug=None, limit=10)¶ Get an Artist Similar Radio, a List of Track from the Similar Artist discography.
Parameters: Returns: Tracks
Return type:
-
get_radio_event
(uuid=None, slug=None, limit=10)¶ Get a Event’s Radio, a List of Track from the given Event discography.
Parameters: Returns: Tracks
Return type:
-
get_radio_label
(uuid=None, slug=None, limit=10)¶ Get a Label’s Radio, a List of Track from the given Label discography.
Parameters: Returns: Tracks
Return type:
-
get_radio_tag
(slug=None, limit=10)¶ Get a Tag Radio, a List of Track from the given Tag catalog.
Parameters: Returns: Tracks
Return type:
-
get_release
(uuid=None, slug=None)¶ Get a Release
Parameters: Returns: Release
Return type: dictionary
-
get_release_sources
(uuid=None, slug=None)¶ Get the Release Ids for other Services. Slug or UUID are mandatory.
Parameters: Returns: List of equivalence in other services
Return type:
-
get_shop_artist
(product_type, uuid=None, slug=None)¶ Get Artist’s related products
Parameters: Returns: Products
Return type:
-
get_shop_label
(product_type, uuid=None, slug=None)¶ Get Label’s related products
Parameters: Returns: Products
Return type:
-
get_shop_release
(product_type, uuid=None, slug=None)¶ Get Release’s related products
Parameters: Returns: Products
Return type:
-
get_shop_track
(uuid=None)¶ Get Track’s related products
Parameters: uuid (string) – The Track UUID Returns: Products Return type: generator
-
get_tag
(slug=None)¶ Get a Tag
Parameters: slug (string) – The Tag slug Returns: Tag Return type: dictionary
-
get_tag_artists
(slug=None, start=0, limit=10)¶ Get Artists from a Tag
Parameters: Returns: Artists
Return type:
-
get_tag_releases
(slug=None, start=0, limit=10)¶ Get Releases from a Tag
Parameters: Returns: Releases
Return type:
-
get_track
(uuid=None)¶ Get a Track
Parameters: uuid (string) – The Track UUID Returns: Track Return type: dictionary
-
get_track_sources
(uuid=None)¶ Get a Track’s Sources
Parameters: uuid (string) – The Track UUID Returns: Source Return type: generator
-
iter_artist_aliases
(uuid=None, slug=None)¶ Get an Artist’s aliases
Parameters: Returns: Artists
Return type: generator
-
iter_artist_bands
(uuid=None, slug=None, start=0, limit=10)¶ Get an Artist’s bands
Parameters: Returns: Artists
Return type: generator
-
iter_artist_events
(uuid=None, slug=None, start=0, limit=10)¶ Get an Artist’s events
Parameters: Returns: Events
Return type: generator
-
iter_artist_members
(uuid=None, slug=None, start=0, limit=10)¶ Get a Band’s members
Parameters: Returns: Artists
Return type: generator
Get related Artists
Parameters: Returns: Artists
Return type: generator
-
iter_artist_releases
(uuid=None, slug=None, start=0, limit=10, release_type=None, release_format=None, credited=False)¶ Get an Artist’s releases
Parameters: - uuid (string) – The Artist UUID
- slug (string) – The Artist Slug
- start (int) – Offset for pagination
- limit (int) – Size of generator batch
- release_type (string) – Release type (official|unofficial|all)
- release_format (string) – Release format (album|single|live|all)
- credited (bool) – Releases where artist is credited (not main releases)
Returns: Releases
Return type: generator
-
iter_artist_similar
(uuid=None, slug=None, filters={}, start=0, limit=10)¶ Get similar Artists
Parameters: Returns: Artists
Return type: generator
-
iter_artist_websites
(uuid=None, slug=None)¶ Get Artist’s websites
Parameters: Returns: Websites
Return type: generator
-
iter_harmonia_search_by_source
(source_name=None, source_id=None, source_filters=[], strict=False)¶ Get a Track from the Blitzr API with a external source ID.
Parameters: Returns: Track
Return type: generator
-
iter_label_artists
(uuid=None, slug=None, start=0, limit=10)¶ Get a Label’s artists
Parameters: Returns: Labels
Return type: generator
-
iter_label_releases
(uuid=None, slug=None, release_format=None, start=0, limit=10)¶ Get a Label’s releases
Parameters: Returns: Releases
Return type: generator
-
iter_label_similar
(uuid=None, slug=None, filters={}, start=0, limit=10)¶ Get similar Labels
Parameters: Returns: Labels
Return type: generator
-
iter_label_websites
(uuid=None, slug=None)¶ Get Label’s websites
Parameters: Returns: Websites
Return type: generator
-
iter_radio_artist
(uuid=None, slug=None, limit=10)¶ Get an Artist’s Radio, a List of Track from the given Artist discography.
Parameters: Returns: Tracks
Return type: generator
-
iter_radio_artist_similar
(uuid=None, slug=None, limit=10)¶ Get an Artist Similar Radio, a List of Track from the Similar Artist discography.
Parameters: Returns: Tracks
Return type: generator
-
iter_radio_event
(uuid=None, slug=None, limit=10)¶ Get a Event’s Radio, a List of Track from the given Event discography.
Parameters: Returns: Tracks
Return type: generator
-
iter_radio_label
(uuid=None, slug=None, limit=10)¶ Get a Label’s Radio, a List of Track from the given Label discography.
Parameters: Returns: Tracks
Return type: generator
-
iter_radio_tag
(slug=None, limit=10)¶ Get a Tag Radio, a List of Track from the given Tag catalog.
Parameters: Returns: Tracks
Return type: generator
-
iter_release_sources
(uuid=None, slug=None)¶ Get the Release Ids for other Services. Slug or UUID are mandatory.
Parameters: Returns: List of equivalence in other services
Return type: generator
-
iter_search
(query=None, types=[], autocomplete=False, start=0, limit=10)¶ Search multiple entities.
Parameters: Returns: Labels
Return type:
-
iter_search_artist
(query=None, filters={}, autocomplete=False, start=0, limit=10)¶ Search Artist by query and filters.
Parameters: Returns: Artists
Return type:
-
iter_search_event
(query=None, filters={}, start=0, limit=10)¶ Search Artist by query and filters.
Parameters: Returns: Artists
Return type:
-
iter_search_label
(query=None, filters={}, autocomplete=False, start=0, limit=10)¶ Search Label by query and filters.
Parameters: Returns: Labels
Return type:
-
iter_search_release
(query=None, filters={}, autocomplete=False, start=0, limit=10)¶ Search Release by query and filters.
Parameters: Returns: Releases
Return type:
-
iter_search_track
(query=None, filters={}, start=0, limit=10)¶ Search Track by query and filters.
Parameters: Returns: Tracks
Return type:
-
iter_shop_artist
(product_type, uuid=None, slug=None)¶ Get Artist’s related products
Parameters: Returns: Products
Return type: generator
-
iter_shop_label
(product_type, uuid=None, slug=None)¶ Get Label’s related products
Parameters: Returns: Products
Return type: generator
-
iter_shop_release
(product_type, uuid=None, slug=None)¶ Get Release’s related products
Parameters: Returns: Products
Return type: generator
-
iter_shop_track
(uuid=None)¶ Get Track’s related products
Parameters: uuid (string) – The Track UUID Returns: Products Return type: generator
-
iter_tag_artists
(slug=None, start=0, limit=10)¶ Get Artists from a Tag
Parameters: Returns: Artists
Return type: generator
-
iter_tag_releases
(slug=None, start=0, limit=10)¶ Get Releases from a Tag
Parameters: Returns: Releases
Return type: generator
-
iter_track_sources
(uuid=None)¶ Get a Track’s Sources
Parameters: uuid (string) – The Track UUID Returns: Source Return type: generator
-
search_artist
(query=None, filters={}, autocomplete=False, start=0, limit=10)¶ Search Artist by query and filters.
Parameters: Returns: Artists
Return type:
-
search_event
(query=None, filters={}, start=0, limit=10)¶ Search Artist by query and filters.
Parameters: Returns: Artists
Return type:
-
search_label
(query=None, filters={}, autocomplete=False, start=0, limit=10)¶ Search Label by query and filters.
Parameters: Returns: Labels
Return type:
-
search_release
(query=None, filters={}, autocomplete=False, start=0, limit=10)¶ Search Release by query and filters.
Parameters: Returns: Releases
Return type:
-
search_track
(query=None, filters={}, start=0, limit=10)¶ Search Track by query and filters.
Parameters: Returns: Tracks
Return type:
-
Search Generator:¶
-
class
blitzr.client.
SearchGenerator
(client=None, endpoint=None, params={})¶ Bases:
object
Custom Generator for Search requests, provides length compatibility.
The only non standard generators are those returned by the search queries. They are differents by their ability to retreive the total count of elements to generate.
You will be able to call the len() method on the generator.
Example: >>> from blitzr import BlitzrClient >>> blitzr = BlitzrClient(your_api_key) >>> artists = blitzr.iter_search_artist(query='emine', autocomplete=True) >>> print len(artists) 80
Then it works exactly as all other generators.
Example: >>> for artist in artists: >>> print artist.get('name') Emine Emine Eminem Emine Krasniqi Eminence Eminent Eminent ...
-
next
()¶ Get next result.
-
Exceptions:¶
-
class
blitzr.exceptions.
ConfigurationException
¶ Bases:
exceptions.IOError
There is a problem with your configuration, check your Blitzr API Key.
-
args
¶
-
errno
¶
-
filename
¶
-
message
¶
-
strerror
¶
-
-
class
blitzr.exceptions.
NetworkException
¶ Bases:
exceptions.IOError
A network problem occured, try again.
-
args
¶
-
errno
¶
-
filename
¶
-
message
¶
-
strerror
¶
-