diff --git a/src/core/utils/logging/loghandler.py b/src/core/utils/logging/loghandler.py index 9a424a3..9569a20 100644 --- a/src/core/utils/logging/loghandler.py +++ b/src/core/utils/logging/loghandler.py @@ -1,6 +1,8 @@ -from core.utils.logging.logs import consoleLog +from core.utils.logging.logs import consoleLog, remove_download_log from core.utils.network.download import run_download_direct +import os + def split_data(data): count = data.count @@ -16,6 +18,11 @@ def check_completed(downloads, resume): run_download_direct(download.magnet_uri) consoleLog(f"Resuming {download.title}") - - - +def check_downloads(downloads): + for download in downloads: + if os.path.exists(download.path): + consoleLog(f"Existing Download: {download.title}") + else: + consoleLog(f"Inexistent Download: {download.title}") + remove_download_log(download.magnet_uri) + \ No newline at end of file diff --git a/src/core/utils/logging/logs.py b/src/core/utils/logging/logs.py index 7fd0ca9..b7a43c2 100644 --- a/src/core/utils/logging/logs.py +++ b/src/core/utils/logging/logs.py @@ -77,10 +77,12 @@ def remove_download_log(magnet_uri) -> DownloadList: else: downloads = [] + magnet_link = (magnet_uri or "").strip() + title = next((getattr(d, 'title', 'Unknown') for d in downloads if (getattr(d, 'magnet_uri', None) or '').strip() == magnet_link or (getattr(d, 'url', None) or '').strip() == magnet_link)) downloads = [d for d in downloads if (getattr(d, 'magnet_uri', None) or "").strip() != magnet_link and (getattr(d, 'url', None) or "").strip() != magnet_link] - consoleLog(f"Removed {magnet_link} from Log File") + consoleLog(f"Removed {title} from Log File") download_list = DownloadList(data=downloads, count=len(downloads)) with open(downloads_file, "w") as file: diff --git a/src/main.py b/src/main.py index 0f263c0..4d52c35 100644 --- a/src/main.py +++ b/src/main.py @@ -5,7 +5,7 @@ from core.network.libtorrent_misc import send_notification, update_log from core.utils.logging.logs import get_download_logs from core.utils.general.shutdown import closehelper, shutdown_event from core.utils.general.wrappers import run_thread -from core.utils.logging.loghandler import split_data, check_completed +from core.utils.logging.loghandler import split_data, check_completed, check_downloads from core.network.interface import list_interfaces, init_interfaces from core.utils.config.config import read_config from PySide6 import QtWidgets @@ -60,6 +60,7 @@ if __name__ == "__main__": consoleLog("Started Thread: update_log") run_thread(threading.Thread(target=check_completed, args=(downloads, state.autoresume))) consoleLog("Started Thread: check_completed") + check_downloads(downloads) elapsed = time.perf_counter() - start_time consoleLog(f"Initialization completed in {elapsed:.2f}s. Launching GUI") run_gui()