From b7e0ec0e0a47bfd4b7969827dc057a2a630684d5 Mon Sep 17 00:00:00 2001 From: djdembeck Date: Tue, 23 Nov 2021 21:32:57 -0600 Subject: [PATCH] refactor(album-update): :recycle: import re for update_tools globally; check if book prefix is already on API side --- Contents/Code/__init__.py | 4 ++-- Contents/Code/update_tools.py | 13 ++++++++----- 2 files changed, 10 insertions(+), 7 deletions(-) diff --git a/Contents/Code/__init__.py b/Contents/Code/__init__.py index 4719aa8..62a8b03 100644 --- a/Contents/Code/__init__.py +++ b/Contents/Code/__init__.py @@ -206,7 +206,7 @@ def compile_metadata(self, helper): # Description. if not helper.metadata.summary or helper.force: helper.metadata.summary = helper.description - tagger = TagTool(helper, Prefs, re) + tagger = TagTool(helper, Prefs) # Genres. tagger.add_genres() # Title. @@ -461,7 +461,7 @@ def compile_metadata(self, helper): if helper.date is not None: if not helper.metadata.originally_available_at or helper.force: helper.metadata.originally_available_at = helper.date - tagger = TagTool(helper, Prefs, re) + tagger = TagTool(helper, Prefs) # Genres. tagger.add_genres() # Narrators. diff --git a/Contents/Code/update_tools.py b/Contents/Code/update_tools.py index 973086d..9757822 100644 --- a/Contents/Code/update_tools.py +++ b/Contents/Code/update_tools.py @@ -1,5 +1,6 @@ # Import internal tools from logging import Logging +import re # Setup logger log = Logging() @@ -61,8 +62,11 @@ def parse_api_response(self, response): self.title = response['title'] def volume_prefix(self, string): - prefixed_string = ('Book ' + string) - return prefixed_string + book_regex = '(Book ?(\d*\.)?\d+[+-]?[\d]?)' + if not re.match(book_regex, string): + prefixed_string = ('Book ' + string) + return prefixed_string + return string # Writes metadata information to log. def writeInfo(self): @@ -152,10 +156,9 @@ def writeInfo(self): class TagTool: - def __init__(self, helper, Prefs, re): + def __init__(self, helper, Prefs): self.helper = helper self.prefs = Prefs - self.re = re def add_genres(self): """ @@ -186,7 +189,7 @@ def add_authors_to_moods(self): self.helper.metadata.moods.clear() # Loop through authors to check if it has contributor wording for author in self.helper.author: - if not self.re.match(contributor_regex, author['name']): + if not re.match(contributor_regex, author['name']): self.helper.metadata.moods.add(author['name'].strip()) def add_series_to_moods(self):