#!/usr/bin/python3 from glob import glob import shutil import os from pathlib import Path import subprocess import re source_path = Path('/mnt/Download/finished/') dest_path = '/mnt/Download/PostProcess/' section_folders = ['4K-Movies', '4K-Series', 'Movies', 'Series'] # source_path = 'C:/Test/finished' # dest_path = "C:/Test/PostProcess" print("Checking if rar files and unraring...") for root, dirs, files in os.walk(source_path): for dir in dirs: for file in files: rar_file = glob(f"{os.path.join(root, '')}*rar") if rar_file: subprocess.run(["/usr/bin/unrar", 'e', rar_file[0], '-idq', '']) print("Deleting rar, sfv, nfo files...") for root, dirs, files in os.walk(source_path): for dir in dirs: if re.search('sample', dir, re.IGNORECASE) or re.search('proof', dir, re.IGNORECASE): shutil.rmtree(os.path.join(root, dir)) for root, dirs, files in os.walk(source_path): for dir in dirs: if dir not in section_folders: match = re.search(r'.*\/(.*)', root) section_path = match.group(1) shutil.move(os.path.join(root, dir), os.path.join(dest_path, section_path))