#!/usr/bin/env python3 import argparse import os from time import sleep import dir_activities import api_calls from prog_conf import gaa_conf gaa_version = "2024.10.15.2" option_set = argparse.ArgumentParser(description=f"An automatic downloader of artist art using MusicBrainz and Fanart.TV.\nVersion: {gaa_version}") jls_extract_var = f'%(prog)s {gaa_version}' option_set.add_argument('--version', '-v', action='version', version=jls_extract_var) cmd_options = option_set.parse_args() config = gaa_conf().conf music_path = config['music']['dir'] ftv_api_key = config['fanart_tv']['api_key'] mb_confidence = int(config['musicbrainz']['confidence']) count = 1 dir_list = dir_activities.get_all(music_path) dir_list.sort() for artist in dir_list: artist_path = os.path.join(music_path, artist) if (not(dir_activities.has_artist_art(artist_path))): # print(dir_activities.has_artist_art(artist_path)) print(str(count) + ": " + artist.strip('_')) try: ftv_response = False mb_exit = False while not mb_exit: found_status, mb_id, mb_exit = api_calls.get_mb_id(artist, mb_confidence) # print("Getting ", artist_image) if found_status: while not ftv_response: ftv_response = api_calls.get_image(mb_id, ftv_api_key, artist_path) print(ftv_response) else: print(f"{artist} returned no results.") # api_requests.get_art(artist_image, artist, music_path) except Exception as e: print("Artist or art not found.") print(e) print("---------") count += 1 #sleep(1)