From cb6e74199b6f4fa82b2e61b16e58568ddbe2cc18 Mon Sep 17 00:00:00 2001 From: Lukas Pupka-Lipinski Date: Sun, 18 May 2025 19:28:56 +0200 Subject: [PATCH] back to single thread --- Loader.py | 2 +- main.py | 30 +++++++++++++++--------------- 2 files changed, 16 insertions(+), 16 deletions(-) diff --git a/Loader.py b/Loader.py index 6d3492a..2724f27 100644 --- a/Loader.py +++ b/Loader.py @@ -40,7 +40,7 @@ def download(anime: Anime): # pylint: disable=too-many-branches "yt-dlp", episode.get_direct_link(anime.provider, anime.language), "--fragment-retries", "infinite", - "--concurrent-fragments", "4", + #"--concurrent-fragments", "4", "-o", output_path, "--quiet", "--no-warnings" diff --git a/main.py b/main.py index 8afb714..fdb8d17 100644 --- a/main.py +++ b/main.py @@ -168,21 +168,21 @@ class Loader: logging.error(f"Error downloading episode {episode} of season {season} for anime {key}: {e}") # Using ThreadPoolExecutor to run downloads in parallel - with ThreadPoolExecutor(max_workers=2) as executor: # Adjust number of workers as needed - for folder, mp4_files in result: - try: - key = self.__check_and_generate_key(folder) - missings = self.__GetMissingEpisodesAndSeason(key, mp4_files) - for season, missing_episodes in missings: - logging.info(f"Missing episodes for {key}\nSeason {str(season)}: Episodes: " + ",".join(f"{''.join(str(v))}" for v in missing_episodes)) - for episode in missing_episodes: - executor.submit(download_episode, folder, season, episode, key) - #download_episode(folder, season, episode, key) - except NoKeyFoundException as nkfe: - noKeyFound_logger.error(f"Error processing folder '{folder}': {nkfe}") - except Exception as e: - error_logger.error(f"Unexpected error processing folder '{folder}': {e} \n {traceback.format_exc()}") - continue + #with ThreadPoolExecutor(max_workers=1) as executor: # Adjust number of workers as needed + for folder, mp4_files in result: + try: + key = self.__check_and_generate_key(folder) + missings = self.__GetMissingEpisodesAndSeason(key, mp4_files) + for season, missing_episodes in missings: + logging.info(f"Missing episodes for {key}\nSeason {str(season)}: Episodes: " + ",".join(f"{''.join(str(v))}" for v in missing_episodes)) + for episode in missing_episodes: + #executor.submit(download_episode, folder, season, episode, key) + download_episode(folder, season, episode, key) + except NoKeyFoundException as nkfe: + noKeyFound_logger.error(f"Error processing folder '{folder}': {nkfe}") + except Exception as e: + error_logger.error(f"Unexpected error processing folder '{folder}': {e} \n {traceback.format_exc()}") + continue # Read the base directory from an environment variable directory_to_search = os.getenv("ANIME_DIRECTORY", "\\\\sshfs.r\\ubuntu@192.168.178.43\\media\\serien\\Serien")