From c4b4dbcfeb3fb458c4e5e6b045fc9c66812456ae Mon Sep 17 00:00:00 2001 From: Timmy Welch Date: Mon, 18 Apr 2022 18:32:45 -0700 Subject: [PATCH] Code cleanup --- comicapi/comicarchive.py | 4 ++-- comicapi/filenameparser.py | 2 +- comicapi/genericmetadata.py | 14 +++++--------- 3 files changed, 8 insertions(+), 12 deletions(-) diff --git a/comicapi/comicarchive.py b/comicapi/comicarchive.py index f0f1194..c209c19 100644 --- a/comicapi/comicarchive.py +++ b/comicapi/comicarchive.py @@ -135,8 +135,8 @@ class SevenZipArchiver: os.close(tmp_fd) try: - with py7zr.SevenZipFile(self.path, "r") as zip: - targets = [f for f in zip.getnames() if f not in exclude_list] + with py7zr.SevenZipFile(self.path, "r") as zin: + targets = [f for f in zin.getnames() if f not in exclude_list] with py7zr.SevenZipFile(self.path, "r") as zin: with py7zr.SevenZipFile(tmp_name, "w") as zout: for fname, bio in zin.read(targets).items(): diff --git a/comicapi/filenameparser.py b/comicapi/filenameparser.py index c2fb459..73d50de 100644 --- a/comicapi/filenameparser.py +++ b/comicapi/filenameparser.py @@ -89,7 +89,7 @@ class FileNameParser: # is the series name followed by issue filename = re.sub(r"--.*", self.repl, filename) - elif "__" in filename and not re.search(r"\[__\d+__\]", filename): + elif "__" in filename and not re.search(r"\[__\d+__]", filename): # the pattern seems to be that anything to left of the first "__" # is the series name followed by issue filename = re.sub(r"__.*", self.repl, filename) diff --git a/comicapi/genericmetadata.py b/comicapi/genericmetadata.py index 5045ba0..8d2d3db 100644 --- a/comicapi/genericmetadata.py +++ b/comicapi/genericmetadata.py @@ -21,6 +21,7 @@ possible, however lossy it might be # limitations under the License. import logging +from enum import Enum from typing import List, TypedDict from comicapi import utils @@ -28,7 +29,7 @@ from comicapi import utils logger = logging.getLogger(__name__) -class PageType: +class PageType(Enum): """ These page info classes are exactly the same as the CIX scheme, since @@ -48,7 +49,7 @@ class PageType: Deleted = "Deleted" -class ImageMetadata(TypedDict): +class ImageMetadata(TypedDict, total=False): Type: PageType Bookmark: str DoublePage: bool @@ -213,8 +214,7 @@ class GenericMetadata: def set_default_page_list(self, count): # generate a default page list, with the first page marked as the cover for i in range(count): - page_dict = {} - page_dict["Image"] = str(i) + page_dict = ImageMetadata(Image=i) if i == 0: page_dict["Type"] = PageType.FrontCover self.pages.append(page_dict) @@ -241,11 +241,7 @@ class GenericMetadata: def add_credit(self, person, role, primary=False): - credit = {} - credit["person"] = person - credit["role"] = role - if primary: - credit["primary"] = primary + credit: CreditMetadata = {"person": person, "role": role, "primary": primary} # look to see if it's not already there... found = False