mirror of
https://github.com/KevinMidboe/spotify-downloader.git
synced 2025-12-08 20:39:08 +00:00
Add all artists in metadata
This commit is contained in:
21
spotdl.py
21
spotdl.py
@@ -46,8 +46,8 @@ def generate_metadata(raw_song):
|
|||||||
meta_tags[u'copyright'] = spotify.album(meta_tags['album']['id'])['copyrights'][0]['text']
|
meta_tags[u'copyright'] = spotify.album(meta_tags['album']['id'])['copyrights'][0]['text']
|
||||||
meta_tags[u'publisher'] = spotify.album(meta_tags['album']['id'])['label']
|
meta_tags[u'publisher'] = spotify.album(meta_tags['album']['id'])['label']
|
||||||
meta_tags[u'total_tracks'] = spotify.album(meta_tags['album']['id'])['tracks']['total']
|
meta_tags[u'total_tracks'] = spotify.album(meta_tags['album']['id'])['tracks']['total']
|
||||||
import pprint
|
#import pprint
|
||||||
pprint.pprint(meta_tags)
|
#pprint.pprint(meta_tags)
|
||||||
#pprint.pprint(spotify.album(meta_tags['album']['id']))
|
#pprint.pprint(spotify.album(meta_tags['album']['id']))
|
||||||
return meta_tags
|
return meta_tags
|
||||||
|
|
||||||
@@ -270,8 +270,11 @@ def fix_metadata(music_file, meta_tags):
|
|||||||
print('Cannot embed meta-tags into given output extension')
|
print('Cannot embed meta-tags into given output extension')
|
||||||
|
|
||||||
def fix_metadata_mp3(music_file, meta_tags):
|
def fix_metadata_mp3(music_file, meta_tags):
|
||||||
|
artists = []
|
||||||
|
for artist in meta_tags['artists']:
|
||||||
|
artists.append(artist['name'])
|
||||||
audiofile = EasyID3('Music/' + music_file + args.output_ext)
|
audiofile = EasyID3('Music/' + music_file + args.output_ext)
|
||||||
audiofile['artist'] = meta_tags['artists'][0]['name']
|
audiofile['artist'] = ', '.join(artists)
|
||||||
audiofile['albumartist'] = meta_tags['artists'][0]['name']
|
audiofile['albumartist'] = meta_tags['artists'][0]['name']
|
||||||
audiofile['album'] = meta_tags['album']['name']
|
audiofile['album'] = meta_tags['album']['name']
|
||||||
audiofile['title'] = meta_tags['name']
|
audiofile['title'] = meta_tags['name']
|
||||||
@@ -279,6 +282,7 @@ def fix_metadata_mp3(music_file, meta_tags):
|
|||||||
audiofile['discnumber'] = [meta_tags['disc_number'], 0]
|
audiofile['discnumber'] = [meta_tags['disc_number'], 0]
|
||||||
audiofile['date'] = meta_tags['release_date']
|
audiofile['date'] = meta_tags['release_date']
|
||||||
audiofile['originaldate'] = meta_tags['release_date']
|
audiofile['originaldate'] = meta_tags['release_date']
|
||||||
|
audiofile['media'] = meta_tags['type']
|
||||||
audiofile['copyright'] = meta_tags['copyright']
|
audiofile['copyright'] = meta_tags['copyright']
|
||||||
audiofile['author'] = meta_tags['artists'][0]['name']
|
audiofile['author'] = meta_tags['artists'][0]['name']
|
||||||
audiofile['lyricist'] = meta_tags['artists'][0]['name']
|
audiofile['lyricist'] = meta_tags['artists'][0]['name']
|
||||||
@@ -287,7 +291,7 @@ def fix_metadata_mp3(music_file, meta_tags):
|
|||||||
audiofile['encodedby'] = meta_tags['publisher']
|
audiofile['encodedby'] = meta_tags['publisher']
|
||||||
audiofile['isrc'] = meta_tags['external_ids']['isrc']
|
audiofile['isrc'] = meta_tags['external_ids']['isrc']
|
||||||
audiofile['website'] = meta_tags['external_urls']['spotify']
|
audiofile['website'] = meta_tags['external_urls']['spotify']
|
||||||
audiofile['length'] = meta_tags['duration_ms'] / 100
|
audiofile['length'] = str(meta_tags['duration_ms'] / 1000)
|
||||||
if meta_tags['genre']:
|
if meta_tags['genre']:
|
||||||
audiofile['genre'] = meta_tags['genre']
|
audiofile['genre'] = meta_tags['genre']
|
||||||
audiofile.save(v2_version=3)
|
audiofile.save(v2_version=3)
|
||||||
@@ -318,8 +322,11 @@ def fix_metadata_m4a(music_file, meta_tags):
|
|||||||
'copyright': 'cprt',
|
'copyright': 'cprt',
|
||||||
'tempo': 'tmpo'}
|
'tempo': 'tmpo'}
|
||||||
|
|
||||||
|
artists = []
|
||||||
|
for artist in meta_tags['artists']:
|
||||||
|
artists.append(artist['name'])
|
||||||
audiofile = MP4('Music/' + music_file + args.output_ext)
|
audiofile = MP4('Music/' + music_file + args.output_ext)
|
||||||
audiofile[tags['artist']] = meta_tags['artists'][0]['name']
|
audiofile[tags['artist']] = ', '.join(artists)
|
||||||
audiofile[tags['albumartist']] = meta_tags['artists'][0]['name']
|
audiofile[tags['albumartist']] = meta_tags['artists'][0]['name']
|
||||||
audiofile[tags['album']] = meta_tags['album']['name']
|
audiofile[tags['album']] = meta_tags['album']['name']
|
||||||
audiofile[tags['title']] = meta_tags['name']
|
audiofile[tags['title']] = meta_tags['name']
|
||||||
@@ -375,9 +382,9 @@ def grab_single(raw_song, number=None):
|
|||||||
print(get_YouTube_title(content, number))
|
print(get_YouTube_title(content, number))
|
||||||
music_file = generate_filename(content)
|
music_file = generate_filename(content)
|
||||||
if not check_exists(music_file, raw_song, islist=islist):
|
if not check_exists(music_file, raw_song, islist=islist):
|
||||||
download_song(content)
|
#download_song(content)
|
||||||
print('')
|
print('')
|
||||||
convert_song(music_file)
|
#convert_song(music_file)
|
||||||
meta_tags = generate_metadata(raw_song)
|
meta_tags = generate_metadata(raw_song)
|
||||||
if not args.no_metadata:
|
if not args.no_metadata:
|
||||||
fix_metadata(music_file, meta_tags)
|
fix_metadata(music_file, meta_tags)
|
||||||
|
|||||||
Reference in New Issue
Block a user