10 lines
18 KiB
Go
10 lines
18 KiB
Go
|
package discogs
|
||
|
|
||
|
// https://api.discogs.com/masters/718441
|
||
|
|
||
|
const masterJson = `{"styles": ["Hardcore Hip-Hop", "Boom Bap"], "genres": ["Hip Hop"], "videos": [{"duration": 233, "embed": true, "title": "Eminem - It's Ok 1996", "description": "Eminem - It's Ok 1996", "uri": "https://www.youtube.com/watch?v=EKOPq3pDQBM"}, {"duration": 244, "embed": true, "title": "Eminem - Infinite [Official Audio 1996]", "description": "Eminem - Infinite [Official Audio 1996]", "uri": "https://www.youtube.com/watch?v=T8eA7SRTb7Y"}, {"duration": 4617, "embed": true, "title": "Infinite (Europe Reissue) by Eminem [Full Album]", "description": "Infinite (Europe Reissue) by Eminem [Full Album]", "uri": "https://www.youtube.com/watch?v=BzU-rw2t9FY"}], "num_for_sale": 4, "title": "Infinite", "most_recent_release": 10670860, "main_release": 3221262, "notes": "Infinite is the first Eminem album released on November 12, 1996, by Web Entertainment, on vinyl and cassette.", "main_release_url": "https://api.discogs.com/releases/3221262", "year": 1996, "uri": "https://www.discogs.com/Eminem-Infinite/master/718441", "versions_url": "https://api.discogs.com/masters/718441/versions", "tracklist": [{"duration": "4:03", "position": "A1", "type_": "track", "title": "Infinite"}, {"duration": "0:21", "position": "A2", "type_": "track", "extraartists": [{"join": "", "name": "DJ Head", "anv": "", "tracks": "", "role": "Featuring", "resource_url": "https://api.discogs.com/artists/181268", "id": 181268}, {"join": "", "name": "Proof (3)", "anv": "", "tracks": "", "role": "Featuring", "resource_url": "https://api.discogs.com/artists/181319", "id": 181319}], "title": "W.E.G.O."}, {"duration": "3:32", "position": "A3", "type_": "track", "extraartists": [{"join": "", "name": "Eye-Kyu", "anv": "Eiy-Kyu", "tracks": "", "role": "Featuring", "resource_url": "https://api.discogs.com/artists/181265", "id": 181265}], "title": "It's O.K."}, {"duration": "3:45", "position": "A4", "type_": "track", "extraartists": [{"join": "", "name": "DJ Butterfingers", "anv": "D.J. Butterfingers", "tracks": "", "role": "Scratches", "resource_url": "https://api.discogs.com/artists/553092", "id": 553092}], "title": "Tonite"}, {"duration": "4:13", "position": "A5", "type_": "track", "extraartists": [{"join": "", "name": "Eye-Kyu", "anv": "Eiy-Kyu", "tracks": "", "role": "Featuring", "resource_url": "https://api.discogs.com/artists/181265", "id": 181265}], "title": "313"}, {"duration": "3:57", "position": "A6", "type_": "track", "extraartists": [{"join": "", "name": "3", "anv": "Three", "tracks": "", "role": "Featuring", "resource_url": "https://api.discogs.com/artists/56120", "id": 56120}, {"join": "", "name": "Denaun Porter", "anv": "", "tracks": "", "role": "Featuring", "resource_url": "https://api.discogs.com/artists/176778", "id": 176778}], "title": "Maxine"}, {"duration": "4:03", "position": "B1", "type_": "track", "extraartists": [{"join": "", "name": "Thyme", "anv": "", "tracks": "", "role": "Featuring", "resource_url": "https://api.discogs.com/artists/181266", "id": 181266}, {"join": "", "name": "Denaun Porter", "anv": "", "tracks": "", "role": "Voice [Uncredited]", "resource_url": "https://api.discogs.com/artists/176778", "id": 176778}, {"join": "", "name": "Kuniva", "anv": "", "tracks": "", "role": "Voice [Uncredited]", "resource_url": "https://api.discogs.com/artists/333749", "id": 333749}], "title": "Open Mic"}, {"duration": "3:40", "position": "B2", "type_": "track", "extraartists": [{"join": "", "name": "Denaun Porter", "anv": "", "tracks": "", "role": "Voice [Uncredited]", "resource_url": "https://api.discogs.com/artists/176778", "id": 176778}], "title": "Never 2 Far"}, {"duration": "3:46", "position": "B3", "type_": "track", "extraartists": [{"join": "", "name": "Eye-Kyu", "anv": "Eiy-Kyu", "tracks": "", "role": "Featuring", "resource_url": "https://api.discogs.com/artists/181265", "id": 181265}, {"join": "", "name": "Angela Workman", "anv": "", "tracks": "", "role": "Vocals", "resource_url": "https://api.discogs.com/artists/189696", "id": 189696}], "title": "Searchin"}, {"duration": "3:26", "position": "B4", "type_": "track", "extraartis
|
||
|
|
||
|
const releaseJson = `{"styles": ["Ska", "Reggae"], "videos": [{"duration": 301, "description": "ST.PETERSBURG SKA JAZZ REVIEW - WATER TAXI (BalconyTV)", "embed": true, "uri": "https://www.youtube.com/watch?v=i4_kwCTrTRs", "title": "ST.PETERSBURG SKA JAZZ REVIEW - WATER TAXI (BalconyTV)"}, {"duration": 292, "description": "St.Petersburg Ska-Jazz Review - Action Movie", "embed": true, "uri": "https://www.youtube.com/watch?v=IaQA8uiZUUc", "title": "St.Petersburg Ska-Jazz Review - Action Movie"}, {"duration": 320, "description": "St.Petersburg Ska-Jazz Review - Misterioso", "embed": true, "uri": "https://www.youtube.com/watch?v=2u5UtZNXugc", "title": "St.Petersburg Ska-Jazz Review - Misterioso"}, {"duration": 209, "description": "St.Petersburg Ska-Jazz Review - Perfidia", "embed": true, "uri": "https://www.youtube.com/watch?v=s3m6QY_JKnE", "title": "St.Petersburg Ska-Jazz Review - Perfidia"}, {"duration": 201, "description": "St.Petersburg Ska-Jazz Review - Volga River Boat Man", "embed": true, "uri": "https://www.youtube.com/watch?v=d-I-4O6JrMs", "title": "St.Petersburg Ska-Jazz Review - Volga River Boat Man"}], "series": [], "labels": [{"name": "Magnetic Loft Records", "entity_type": "1", "catno": "MLR-007", "resource_url": "https://api.discogs.com/labels/890477", "id": 890477, "entity_type_name": "Label"}], "year": 2016, "community": {"status": "Accepted", "rating": {"count": 11, "average": 4.91}, "have": 73, "contributors": [{"username": "magnetic-loft-music", "resource_url": "https://api.discogs.com/users/magnetic-loft-music"}, {"username": "Shveiker", "resource_url": "https://api.discogs.com/users/Shveiker"}], "want": 18, "submitter": {"username": "magnetic-loft-music", "resource_url": "https://api.discogs.com/users/magnetic-loft-music"}, "data_quality": "Needs Vote"}, "artists": [{"join": "", "name": "St. Petersburg Ska-Jazz Review", "anv": "SPB Ska-Jazz Review", "tracks": "", "role": "", "resource_url": "https://api.discogs.com/artists/794217", "id": 794217}], "images": [{"uri": "", "height": 600, "width": 600, "resource_url": "", "type": "primary", "uri150": ""}, {"uri": "", "height": 600, "width": 600, "resource_url": "", "type": "secondary", "uri150": ""}, {"uri": "", "height": 600, "width": 600, "resource_url": "", "type": "secondary", "uri150": ""}, {"uri": "", "height": 600, "width": 600, "resource_url": "", "type": "secondary", "uri150": ""}], "format_quantity": 1, "id": 8138518, "artists_sort": "St. Petersburg Ska-Jazz Review", "genres": ["Jazz", "Reggae"], "thumb": "", "num_for_sale": 8, "title": "Elephant Riddim", "date_changed": "2018-01-30T13:32:46-08:00", "master_id": 960657, "lowest_price": 10.0, "status": "Accepted", "released_formatted": "18 Feb 2016", "estimated_weight": 230, "master_url": "https://api.discogs.com/masters/960657", "released": "2016-02-18", "date_added": "2016-02-19T01:49:21-08:00", "tracklist": [{"duration": "", "position": "A1", "type_": "track", "title": "Action Movie"}, {"duration": "", "position": "A2", "type_": "track", "title": "Elephant Riddim"}, {"duration": "", "position": "A3", "type_": "track", "title": "Ceora"}, {"duration": "", "position": "A4", "type_": "track", "title": "Doop"}, {"duration": "", "position": "A5", "type_": "track", "title": "52d Street Theme"}, {"duration": "", "position": "B1", "type_": "track", "title": "Fly Away"}, {"duration": "", "position": "B2", "type_": "track", "title": "Water Taxi"}, {"duration": "", "position": "B3", "type_": "track", "title": "Misterioso"}, {"duration": "", "position": "B4", "type_": "track", "title": "Keep On Going"}, {"duration": "", "position": "B5", "type_": "track", "title": "Filho Maravilha / Taj Mahal"}], "extraartists": [{"join": "", "name": "Michael Gavrichkov", "anv": "", "tracks": "", "role": "Artwork By", "resource_url": "https://api.discogs.com/artists/4540627", "id": 4540627}, {"join": "", "name": "Stu Allotropia", "anv": "", "tracks": "", "role": "Design", "resource_url": "https://api.discogs.com/artists/4894261", "id": 4894261}], "country": "Russia", "identifiers": [{"type": "Matrix / Runout", "value": "13
|
||
|
|
||
|
const artistJson = `{"profile": "Marshall Bruce Mathers III (born October 17, 1972, St. Joseph, Missouri), known by his primary stage name Eminem, or by his alter ego Slim Shady, is an American rapper and record producer who grew up in Detroit, Michigan. He began his professional music career as a member of Soul Intent along with Proof in 1992. He also started his first record label with his group that same year called Mashin' Duck Records.", "realname": "Marshall Bruce Mathers III", "releases_url": "https://api.discogs.com/artists/38661/releases", "name": "Eminem", "uri": "https://www.discogs.com/artist/38661-Eminem", "urls": ["http://www.eminem.com", "http://www.instagram.com/eminem", "http://twitter.com/Eminem", "https://twitter.com/AskAboutREVIVAL", "http://www.facebook.com/eminem", "http://www.imdb.com/name/nm0004896", "http://www.myspace.com/eminem", "https://www.youtube.com/user/EminemMusic", "https://www.youtube.com/user/EminemVEVO", "https://www.filmo.gs/credit/16526-eminem", "https://www.bookogs.com/credit/229267-eminem", "http://eminem.tumblr.com", "http://en.wikipedia.org/wiki/Eminem", "http://equipboard.com/pros/eminem", "https://genius.com/eminem"], "images": [{"uri": "", "height": 607, "width": 600, "resource_url": "", "type": "primary", "uri150": ""}, {"uri": "", "height": 610, "width": 600, "resource_url": "", "type": "secondary", "uri150": ""}, {"uri": "", "height": 625, "width": 600, "resource_url": "", "type": "secondary", "uri150": ""}, {"uri": "", "height": 503, "width": 409, "resource_url": "", "type": "secondary", "uri150": ""}, {"uri": "", "height": 652, "width": 452, "resource_url": "", "type": "secondary", "uri150": ""}, {"uri": "", "height": 326, "width": 251, "resource_url": "", "type": "secondary", "uri150": ""}, {"uri": "", "height": 397, "width": 441, "resource_url": "", "type": "secondary", "uri150": ""}, {"uri": "", "height": 450, "width": 348, "resource_url": "", "type": "secondary", "uri150": ""}, {"uri": "", "height": 442, "width": 319, "resource_url": "", "type": "secondary", "uri150": ""}, {"uri": "", "height": 740, "width": 600, "resource_url": "", "type": "secondary", "uri150": ""}, {"uri": "", "height": 446, "width": 299, "resource_url": "", "type": "secondary", "uri150": ""}, {"uri": "", "height": 288, "width": 288, "resource_url": "", "type": "secondary", "uri150": ""}, {"uri": "", "height": 360, "width": 468, "resource_url": "", "type": "secondary", "uri150": ""}, {"uri": "", "height": 372, "width": 500, "resource_url": "", "type": "secondary", "uri150": ""}, {"uri": "", "height": 404, "width": 600, "resource_url": "", "type": "secondary", "uri150": ""}, {"uri": "", "height": 600, "width": 600, "resource_url": "", "type": "secondary", "uri150": ""}, {"uri": "", "height": 444, "width": 600, "resource_url": "", "type": "secondary", "uri150": ""}, {"uri": "", "height": 450, "width": 600, "resource_url": "", "type": "secondary", "uri150": ""}, {"uri": "", "height": 604, "width": 600, "resource_url": "", "type": "secondary", "uri150": ""}, {"uri": "", "height": 642, "width": 500, "resource_url": "", "type": "secondary", "uri150": ""}, {"uri": "", "height": 253, "width": 199, "resource_url": "", "type": "secondary", "uri150": ""}, {"uri": "", "height": 550, "width": 400, "resource_url": "", "type": "secondary", "uri150": ""}, {"uri": "", "height": 160, "width": 236, "resource_url": "", "type": "secondary", "uri150": ""}, {"uri": "", "height": 400, "width": 600, "resource_url": "", "type": "secondary", "uri150": ""}, {"uri": "", "height": 821, "width": 600, "resource_url": "", "type": "secondary", "uri150": ""}, {"uri": "", "height": 258, "width": 195, "resource_url": "", "type": "secondary", "uri150": ""}, {"uri": "", "height": 450, "width": 600, "resource_url": "", "type": "secondary", "uri150": ""}, {"uri": "", "height": 746, "width": 517, "resource_url": "", "type": "secondary", "uri150": ""}, {"uri": "", "height": 170, "width": 220, "resource_url": "", "type": "secondary", "uri150": ""}, {"uri": "", "height": 500, "width": 300, "resource_url": "", "type": "secondary", "uri150":
|