fixed some unicode issues
This commit is contained in:
parent
083eefe697
commit
253b509707
@ -1,5 +1,24 @@
|
||||
import os
|
||||
|
||||
# --- Global UTF-8 logging setup (fix UnicodeEncodeError) ---
|
||||
import sys
|
||||
import io
|
||||
import logging
|
||||
try:
|
||||
if hasattr(sys.stdout, 'reconfigure'):
|
||||
sys.stdout.reconfigure(encoding='utf-8', errors='replace')
|
||||
handler = logging.StreamHandler(sys.stdout)
|
||||
else:
|
||||
utf8_stdout = io.TextIOWrapper(sys.stdout.buffer, encoding='utf-8', errors='replace')
|
||||
handler = logging.StreamHandler(utf8_stdout)
|
||||
handler.setFormatter(logging.Formatter('[%(asctime)s] %(levelname)s: %(message)s', datefmt='%H:%M:%S'))
|
||||
root_logger = logging.getLogger()
|
||||
root_logger.handlers = []
|
||||
root_logger.addHandler(handler)
|
||||
root_logger.setLevel(logging.INFO)
|
||||
except Exception:
|
||||
logging.basicConfig(stream=sys.stdout, format='[%(asctime)s] %(levelname)s: %(message)s', datefmt='%H:%M:%S')
|
||||
|
||||
import os
|
||||
import threading
|
||||
from datetime import datetime
|
||||
|
||||
@ -15,6 +34,26 @@ import logging
|
||||
import atexit
|
||||
|
||||
from Main import SeriesApp
|
||||
|
||||
# --- Fix Unicode logging error for Windows console ---
|
||||
import sys
|
||||
import io
|
||||
# --- Robust Unicode logging for Windows console ---
|
||||
try:
|
||||
if hasattr(sys.stdout, 'reconfigure'):
|
||||
handler = logging.StreamHandler(sys.stdout)
|
||||
handler.setFormatter(logging.Formatter('%(levelname)s: %(message)s'))
|
||||
handler.stream.reconfigure(encoding='utf-8')
|
||||
logging.getLogger().handlers = [handler]
|
||||
else:
|
||||
# Fallback for older Python versions
|
||||
utf8_stdout = io.TextIOWrapper(sys.stdout.buffer, encoding='utf-8', errors='replace')
|
||||
handler = logging.StreamHandler(utf8_stdout)
|
||||
handler.setFormatter(logging.Formatter('%(levelname)s: %(message)s'))
|
||||
logging.getLogger().handlers = [handler]
|
||||
except Exception:
|
||||
# Last resort fallback
|
||||
logging.basicConfig(stream=sys.stdout, format='%(levelname)s: %(message)s')
|
||||
from server.core.entities.series import Serie
|
||||
from server.core.entities import SerieList
|
||||
from server.infrastructure.file_system import SerieScanner
|
||||
|
||||
@ -29,7 +29,7 @@ class SerieList:
|
||||
for anime_folder in os.listdir(self.directory):
|
||||
anime_path = os.path.join(self.directory, anime_folder, "data")
|
||||
if os.path.isfile(anime_path):
|
||||
logging.info(f"Found data folder: {anime_path}")
|
||||
logging.debug(f"Found data folder: {anime_path}")
|
||||
self.load_data(anime_folder, anime_path)
|
||||
else:
|
||||
logging.warning(f"Skipping {anime_folder} - No data folder found")
|
||||
@ -38,7 +38,7 @@ class SerieList:
|
||||
""" Load pickle files from the data folder """
|
||||
try:
|
||||
self.folderDict[anime_folder] = Serie.load_from_file(data_path)
|
||||
logging.info(f"Successfully loaded {data_path} for {anime_folder}")
|
||||
logging.debug(f"Successfully loaded {data_path} for {anime_folder}")
|
||||
except Exception as e:
|
||||
logging.error(f"Failed to load {data_path} in {anime_folder}: {e}")
|
||||
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
Loading…
x
Reference in New Issue
Block a user