From 72b9789cfe9c0e34f0b474e26d8ca1f26d96159b Mon Sep 17 00:00:00 2001 From: X18Py <22696482+X18PY@users.noreply.github.com> Date: Mon, 14 Oct 2019 23:06:42 -0600 Subject: [PATCH] Add filename cleaner Cleans the filenames of a directory and renames them. --- filename_cleaner.py | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 filename_cleaner.py diff --git a/filename_cleaner.py b/filename_cleaner.py new file mode 100644 index 0000000..b40f1bc --- /dev/null +++ b/filename_cleaner.py @@ -0,0 +1,29 @@ +import os +from os.path import isfile, join + +def clean_file_name(filename, cleanerlist): + reversed_file_name = filename[::-1] + split_file_name = reversed_file_name.split('.', 1) + fn = split_file_name[1][::-1] + ext = split_file_name[0][::-1] + + for cleaner in cleanerlist: + fn = fn.replace(cleaner, '') + + return f'{fn}.{ext}' + + +# Change to Directory of files +file_dir = r"YourPathHere" + +# files extensions to target +extensions = ['jpg', 'png', 'gif'] + +# characters, symbols or numbers to remove from filename +cleaners = ['@', '#', '$', '.', '^', '_', '%'] + +for f in os.listdir(file_dir): + for ext in extensions: + if f.endswith(ext): + new_file_name = clean_file_name(f, cleaners) + os.rename(os.path.join(file_dir, f), os.path.join(file_dir, new_file_name)) \ No newline at end of file