4 Commits

Author SHA1 Message Date
883f594f4f Fix the output path of Artist Background.
The artist background had been saving to the folder the script was run from. This has now been resolved.
2024-10-14 11:08:17 -04:00
c5ffadd1f0 Get the artist background.
Adds the artist background as a possible source of artist image.
2024-10-14 10:34:43 -04:00
ea7396ff53 Sleep timer added.
A dely of 1 second has been added to keep the MusicBrainz API from dropping requests (503 errors).
2024-09-30 22:06:30 -04:00
c01b4cdcdd Send a useragent in the request header to MB.
MusicBrainz desires an identifying header in the requests made to its API. This is now included.
2024-09-30 22:05:31 -04:00
2 changed files with 11 additions and 2 deletions

View File

@@ -3,8 +3,9 @@ import os
def get_mb_id(artist_name, mb_confidence):
artist_name = artist_name.strip('_')
mb_url = f'https://musicbrainz.org/ws/2/artist?query=artist:%22{artist_name}%22&fmt=json'
response = requests.get(mb_url)
mb_url = f'https://musicbrainz.org/ws/2/artist?query=artist:"{artist_name}"&fmt=json'
header = {'User-Agent': 'get_artist_art.py/1.0'}
response = requests.get(mb_url, headers=header)
if response.status_code == 200:
mb_data = response.json()
if mb_data['count'] > 0:
@@ -31,6 +32,12 @@ def get_image(mb_id, ftv_api_key, artist_path):
if response.status_code == 200:
with open(os.path.join(artist_path, 'artist.jpg'), 'wb') as f:
f.write(response.content)
elif ('artistbackground' in ftv_data):
art_url = ftv_data['artistbackground'][0]['url']
response = requests.get(art_url)
if (response.status_code == 200):
with open(os.path.join(artist_path, 'artist.jpg'),'wb') as f:
f.write(response.content)
elif ('hdmusiclogo' in ftv_data):
art_url = ftv_data['hdmusiclogo'][0]['url']
response = requests.get(art_url)

View File

@@ -2,6 +2,7 @@
import configparser
import os
from time import sleep
import dir_activities
import api_calls
@@ -38,3 +39,4 @@ for artist in dir_list:
print(e)
count += 1
sleep(1)