From a2135b5d55b03f6b7e9737671fb852e5d01ed3d8 Mon Sep 17 00:00:00 2001 From: Colin Powell Date: Wed, 15 Mar 2023 01:29:48 -0400 Subject: [PATCH] Okay, we want to lookup albums by name and artist --- vrobbler/apps/music/utils.py | 7 +++++-- vrobbler/apps/scrobbles/tsv.py | 2 +- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/vrobbler/apps/music/utils.py b/vrobbler/apps/music/utils.py index 21b8266..53ffc7e 100644 --- a/vrobbler/apps/music/utils.py +++ b/vrobbler/apps/music/utils.py @@ -47,18 +47,20 @@ def get_or_create_album( album_dict = lookup_album_dict_from_mb(name, artist_name=artist.name) name = name or album_dict["title"] - mbid = mbid or album_dict["mb_id"] logger.debug(f"Looking up album {name} and mbid: {mbid}") - album = Album.objects.filter(musicbrainz_id=mbid).first() + album = Album.objects.filter(artist=artist, name=name).first() + if not album and name: album = Album.objects.create(name=name, musicbrainz_id=mbid) album.year = album_dict["year"] album.musicbrainz_releasegroup_id = album_dict["mb_group_id"] album.musicbrainz_albumartist_id = artist.musicbrainz_id + album.musicbrainz_id = album_dict["mbid"] album.save( update_fields=[ + "musicbrainz_id", "year", "musicbrainz_releasegroup_id", "musicbrainz_albumartist_id", @@ -66,6 +68,7 @@ def get_or_create_album( ) album.artists.add(artist) album.fetch_artwork() + album.scrape_allmusic() if not album: logger.warn(f"No album found for {name} and {mbid}") diff --git a/vrobbler/apps/scrobbles/tsv.py b/vrobbler/apps/scrobbles/tsv.py index 2cc5891..7d7a237 100644 --- a/vrobbler/apps/scrobbles/tsv.py +++ b/vrobbler/apps/scrobbles/tsv.py @@ -37,7 +37,7 @@ def process_audioscrobbler_tsv_file(file_path, user_id, user_tz=None): ) continue artist = get_or_create_artist(row[0]) - album = get_or_create_album(row[1], artist, row[7]) + album = get_or_create_album(row[1], artist) track = get_or_create_track( title=row[2],