Artistas en entidades relacionadas

This commit is contained in:
Daniel Cortes
2020-05-23 02:55:30 -04:00
parent ce38c62ac3
commit 9ab6a2ed9f
2 changed files with 50 additions and 53 deletions

View File

@@ -3,7 +3,6 @@ from utils import pretty_print_json
def map_artist(mb_artist):
pretty_print_json(mb_artist.get('tags'))
return {
'id': mb_artist.get('id'),
'name': mb_artist.get('name'),
@@ -15,6 +14,16 @@ def map_artist(mb_artist):
}
def map_artist_credit(mb_artist_credit):
pretty_print_json(mb_artist_credit)
return {
'id': mb_artist_credit.get('artist').get('id'),
'name': mb_artist_credit.get('artist').get('name'),
'sort_name': mb_artist_credit.get('artist').get('sort_name'),
'disambiguation': mb_artist_credit.get('artist').get('disambiguation'),
}
def map_disc(mb_disc):
disc = {
'id': mb_disc.get('id'),
@@ -22,7 +31,8 @@ def map_disc(mb_disc):
'disambiguation': mb_disc.get('disambiguation'),
'first_release_date': mb_disc.get('first_release_date'),
'primary_type': mb_disc.get('primary_type'),
'cover_art': get_cover_art_disc(mb_disc.get('id'))
'cover_art': get_cover_art_disc(mb_disc.get('id')),
'artist': [map_artist_credit(c) for c in mb_disc.get('artist_credit')]
}
if len(mb_disc.get('secondary_types', [])) > 0:
@@ -39,7 +49,8 @@ def map_release(mb_release):
'status': mb_release.get('status'),
'country': mb_release.get('country'),
'date': mb_release.get('date'),
'cover_art': get_cover_art_release(mb_release.get('id'))
'cover_art': get_cover_art_release(mb_release.get('id')),
'artist': [map_artist_credit(c) for c in mb_release.get('artist_credit')]
}
@@ -49,7 +60,8 @@ def map_recording(mb_recording):
'title': mb_recording.get('title'),
'disambiguation': mb_recording.get('disambiguation'),
'video': mb_recording.get('video'),
'length': mb_recording.get('length')
'length': mb_recording.get('length'),
'artist': [map_artist_credit(c) for c in mb_recording.get('artist_credit')]
}
@@ -96,7 +108,7 @@ def get_artist(mbid):
def get_disc(mbid):
mb_disc = mb.get_release_group_by_mbid(mbid)
mb_disc = mb.get_release_group_by_mbid(mbid, includes=['artists'])
if 'error' in mb_disc:
return mb_disc
@@ -104,7 +116,7 @@ def get_disc(mbid):
def get_discs_of_artist(mbid, limit, page):
mb_discs = mb.browse_release_groups(params={'artist': mbid}, limit=limit, offset=limit * (page - 1))
mb_discs = mb.browse_release_groups(params={'artist': mbid}, includes=['artist-credits'], limit=limit, offset=limit * (page - 1))
if 'error' in mb_discs:
return mb_discs
@@ -126,7 +138,7 @@ def get_artist_of_disc(mbid, limit, page):
def get_release(mbid):
mb_release = mb.get_release_by_mbid(mbid)
mb_release = mb.get_release_by_mbid(mbid, includes=['artists'])
if 'error' in mb_release:
return mb_release
@@ -134,7 +146,7 @@ def get_release(mbid):
def get_releases_of_disc(mbid, limit, page):
mb_releases = mb.browse_releases(params={'release-group': mbid}, limit=limit, offset=limit * (page - 1))
mb_releases = mb.browse_releases(params={'release-group': mbid}, includes=['artist-credits'], limit=limit, offset=limit * (page - 1))
if 'error' in mb_releases:
return mb_releases
@@ -156,7 +168,7 @@ def get_artist_of_release(mbid, limit, page):
def get_recording(mbid):
mb_recording = mb.get_recording_by_mbid(mbid)
mb_recording = mb.get_recording_by_mbid(mbid, includes=['artists'])
if 'error' in mb_recording:
return mb_recording
@@ -164,7 +176,7 @@ def get_recording(mbid):
def get_recordings_of_release(mbid, limit, page):
mb_recordings = mb.browse_recordings(params={'release': mbid}, limit=limit, offset=limit * (page - 1))
mb_recordings = mb.browse_recordings(params={'release': mbid}, includes=['artist-credits'], limit=limit, offset=limit * (page - 1))
if 'error' in mb_recordings:
return mb_recordings
@@ -175,7 +187,7 @@ def get_recordings_of_release(mbid, limit, page):
def get_release_of_recording(mbid, limit, page):
mb_releases = mb.browse_releases(params={'recording': mbid}, limit=limit, offset=limit * (page - 1))
mb_releases = mb.browse_releases(params={'recording': mbid}, includes=['artists-credits'], limit=limit, offset=limit * (page - 1))
if 'error' in mb_releases:
return mb_releases
@@ -228,6 +240,8 @@ def get_cover_art_recording(mbid):
def search_artist(query, limit, page):
mb_artists = mb.search_artist(query=query, limit=limit, offset=limit * (page - 1))
if 'error' in mb_artists:
return mb_artists
return {
'paginate': paginate(mb_artists['count'], limit, page),
@@ -236,7 +250,7 @@ def search_artist(query, limit, page):
def search_disc(query, limit, page):
mb_discs = mb.search_release_group(query=query, limit=limit, offset=limit * (page - 1))
mb_discs = mb.search_release_group(query=query, includes=['artist'], limit=limit, offset=limit * (page - 1))
return {
'paginate': paginate(mb_discs['count'], limit, page),
@@ -245,7 +259,7 @@ def search_disc(query, limit, page):
def search_release(query, limit, page):
mb_releases = mb.search_release(query=query, limit=limit, offset=limit * (page - 1))
mb_releases = mb.search_release(query=query, includes=['artist'], limit=limit, offset=limit * (page - 1))
return {
'paginate': paginate(mb_releases['count'], limit, page),
@@ -254,7 +268,7 @@ def search_release(query, limit, page):
def search_recording(query, limit, page):
mb_recording = mb.search_recording(query=query, limit=limit, offset=limit * (page - 1))
mb_recording = mb.search_recording(query=query, includes=['artist'], limit=limit, offset=limit * (page - 1))
return {
'paginate': paginate(mb_recording['count'], limit, page),