From c35321013a3042bf16adeb59bf2a3202ffe1acab Mon Sep 17 00:00:00 2001 From: lllyasviel Date: Sat, 11 Nov 2023 02:28:09 -0800 Subject: [PATCH] better html log --- fooocus_version.py | 2 +- modules/private_logger.py | 45 +++++++++++++++++++++++---------------- 2 files changed, 28 insertions(+), 19 deletions(-) diff --git a/fooocus_version.py b/fooocus_version.py index ce63b991..d57c3fc2 100644 --- a/fooocus_version.py +++ b/fooocus_version.py @@ -1 +1 @@ -version = '2.1.782' +version = '2.1.783' diff --git a/modules/private_logger.py b/modules/private_logger.py index 0750f2e7..de40917c 100644 --- a/modules/private_logger.py +++ b/modules/private_logger.py @@ -5,6 +5,9 @@ from PIL import Image from modules.util import generate_temp_filename +log_cache = {} + + def get_current_html_path(): date_string, local_temp_filename, only_name = generate_temp_filename(folder=modules.config.path_outputs, extension='png') @@ -18,27 +21,33 @@ def log(img, dic, single_line_number=3): Image.fromarray(img).save(local_temp_filename) html_name = os.path.join(os.path.dirname(local_temp_filename), 'log.html') - if not os.path.exists(html_name): - with open(html_name, 'a+', encoding='utf-8') as f: - f.write(f"

Fooocus Log {date_string} (private)

\n") - f.write(f"

All images do not contain any hidden data.

") + existing_log = log_cache.get(html_name, None) - with open(html_name, 'a+', encoding='utf-8') as f: - div_name = only_name.replace('.', '_') - f.write(f'

\n') - f.write(f"

{only_name}

\n") - i = 0 - for k, v in dic: - if i < single_line_number: - f.write(f"

{k}: {v}

\n") + if existing_log is None: + if os.path.exists(html_name): + existing_log = open(html_name, encoding='utf-8').read() + else: + existing_log = f'

Fooocus Log {date_string} (private)

\n

All images do not contain any hidden data.

' + + div_name = only_name.replace('.', '_') + item = f'
\n' + item += f"

{only_name}

\n" + for i, (k, v) in enumerate(dic): + if i < single_line_number: + item += f"

{k}: {v}

\n" + else: + if (i - single_line_number) % 2 == 0: + item += f"

{k}: {v}, " else: - if (i - single_line_number) % 2 == 0: - f.write(f"

{k}: {v}, ") - else: - f.write(f"{k}: {v}

\n") - i += 1 - f.write(f"

\n") + item += f"{k}: {v}

\n" + item += f"


\n" + existing_log = item + existing_log + + with open(html_name, 'w', encoding='utf-8') as f: + f.write(existing_log) print(f'Image generated with private log at: {html_name}') + log_cache[html_name] = existing_log + return