From 0e75f032f543577aab7d19f2ff74ac642eb21d41 Mon Sep 17 00:00:00 2001 From: Mathieu Loiseau <mathieu.loiseau@liris.cnrs.fr> Date: Tue, 17 May 2022 17:06:09 +0200 Subject: [PATCH] rename --- good_ol_mixtape.py | 19 +++++++++++++++++-- 1 file changed, 17 insertions(+), 2 deletions(-) diff --git a/good_ol_mixtape.py b/good_ol_mixtape.py index d9d17d0..dca171f 100644 --- a/good_ol_mixtape.py +++ b/good_ol_mixtape.py @@ -4,10 +4,12 @@ import m3u8 import music_tag from urllib.parse import unquote +import os class Song: def __init__(self,song_path, mixAlbum = None, mixNumber = None, mixAuthor=None, mixCover=None): - self.track = music_tag.load_file(song_path) + self.path = song_path + self.track = music_tag.load_file(self.path) self.title = self.track['title'].first self.o_album = self.track['album'].first self.artist = self.track['artist'].first @@ -45,9 +47,17 @@ class Song: self.track.append_tag('artwork', a) def update_tag(self): - #self.track.save() + self.track.save() print("uncomment to update "+str(self)) + def rename_track(self): + self.update_tag() + new_path = f"{os.path.dirname(self.path)}/{self.track['tracknumber'].first}. {self.title} [{self.artist}]{os.path.splitext(os.path.basename(self.path))[1]}" + os.rename(self.path, new_path) + self.path = new_path + self.track = music_tag.load_file(self.path) + + def __str__(self): return f"{self.track['tracknumber'].first}/{self.track['totaltracks'].first}. {self.track['album'].first}/{self.title} — {self.artist} (track #{self.o_number} of {self.o_album})" @@ -81,9 +91,14 @@ class MixTape: for t in self.playlist: t.set_totalnum(len(self.playlist)) t.update_tag() + t.rename_track() def __str__(self): res = "" for track in self.playlist: res += track.__str__()+"\n" return res +if __name__ == "__main__": + s = Song("sampleData/archive/02. NoName - Rainforest.flac", "test", 5, "me", "sampleData/CONNECTED.png") + s.set_totalnum(12) + s.rename_track() -- GitLab