Skip to content

Commit 84040e3

Browse files
Tidyup outputs (#24)
- Change status's to use `simpleDotsScrolling` - Add status for: - Extracting - Processing - Archiving - Empty folder Cleanup
1 parent 31c06d3 commit 84040e3

1 file changed

Lines changed: 19 additions & 11 deletions

File tree

perdoo/__main__.py

Lines changed: 19 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -274,7 +274,6 @@ def process_pages(
274274
from perdoo.models.metadata import Page as MetadataPage
275275
from perdoo.models.metron_info import Page as MetronPage
276276

277-
LOGGER.info("Processing pages")
278277
rename_images(folder=folder, filename=filename)
279278
image_list = list_files(folder, *IMAGE_EXTENSIONS)
280279
metadata_pages = set()
@@ -304,16 +303,19 @@ def process_pages(
304303
def start(settings: Settings, force: bool = False) -> None:
305304
LOGGER.info("Starting Perdoo")
306305

307-
with CONSOLE.status(f"Searching for non-{settings.output.format} files"):
306+
with CONSOLE.status(
307+
f"Searching for non-{settings.output.format} files", spinner="simpleDotsScrolling"
308+
):
308309
convert_collection(path=settings.input_folder, output=settings.output.format)
309310

310-
with CONSOLE.status(f"Searching for {settings.output.format} files"):
311+
with CONSOLE.status(
312+
f"Searching for {settings.output.format} files", spinner="simpleDotsScrolling"
313+
):
311314
archives = load_archives(
312315
path=settings.input_folder, output=settings.output.format, force=force
313316
)
314317

315318
for file, archive, details in archives:
316-
CONSOLE.rule(file.stem)
317319
LOGGER.info("Processing %s", file.stem)
318320
details = details or Details(
319321
series=Identifications(search=Prompt.ask("Series title", console=CONSOLE)),
@@ -327,17 +329,22 @@ def start(settings: Settings, force: bool = False) -> None:
327329
new_file = generate_filename(
328330
root=settings.output_folder, extension=settings.output.format.value, metadata=metadata
329331
)
330-
with TemporaryDirectory(prefix=f"{new_file.stem}_") as temp_str:
332+
333+
with TemporaryDirectory(prefix=f"{new_file.stem}_") as temp_str, CONSOLE.status(
334+
"Extracting files", spinner="simpleDotsScrolling"
335+
) as status:
331336
temp_folder = Path(temp_str)
332337
if not archive.extract_files(destination=temp_folder):
333338
return
339+
status.update("Processing pages", spinner="simpleDotsScrolling")
334340
process_pages(
335341
folder=temp_folder,
336342
metadata=metadata,
337343
metron_info=metron_info,
338344
comic_info=comic_info,
339345
filename=new_file.stem,
340346
)
347+
status.update("Packaging archive", spinner="simpleDotsScrolling")
341348
metadata.meta = Meta(date_=date.today())
342349
files = list_files(temp_folder, *IMAGE_EXTENSIONS)
343350
if settings.output.create_metadata:
@@ -367,12 +374,13 @@ def start(settings: Settings, force: bool = False) -> None:
367374
new_file.parent.mkdir(parents=True, exist_ok=True)
368375
shutil.move(file, new_file)
369376

370-
for folder in sorted(
371-
settings.input_folder.rglob("*"), key=lambda p: len(p.parts), reverse=True
372-
):
373-
if folder.is_dir() and not any(folder.iterdir()):
374-
folder.rmdir()
375-
LOGGER.info("Deleted empty folder: %s", folder)
377+
with CONSOLE.status("Cleaning up empty folders", spinner="simpleDotsScrolling"):
378+
for folder in sorted(
379+
settings.input_folder.rglob("*"), key=lambda p: len(p.parts), reverse=True
380+
):
381+
if folder.is_dir() and not any(folder.iterdir()):
382+
folder.rmdir()
383+
LOGGER.info("Deleted empty folder: %s", folder)
376384

377385

378386
def main() -> None:

0 commit comments

Comments
 (0)