From 62da896b25b26b4ceda4263584d5a8dbc503ed50 Mon Sep 17 00:00:00 2001 From: HECer Date: Sun, 20 Oct 2024 15:01:02 +0200 Subject: [PATCH] Add FilePathExtractor node --- file_path_extractor.py | 38 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 file_path_extractor.py diff --git a/file_path_extractor.py b/file_path_extractor.py new file mode 100644 index 0000000..dac89db --- /dev/null +++ b/file_path_extractor.py @@ -0,0 +1,38 @@ +import os + +class FilePathExtractor: + @classmethod + def INPUT_TYPES(cls): + return { + "required": { + "test": ("STRING", {"default": ""}) + } + } + + CATEGORY = "Custom Nodes" + RETURN_TYPES = ("STRING", "STRING", "STRING", "STRING") + RETURN_NAMES = ("File Name", "File Extension", "Folder Name", "Folder Path") + FUNCTION = "process" + + @staticmethod + def IS_CHANGED(): + return True + + def process(self, test): + if os.path.isfile(test): + file_name = os.path.basename(test) + file_extension = os.path.splitext(test)[1][1:] + folder_path = os.path.dirname(test) + folder_name = os.path.basename(folder_path) + elif os.path.isdir(test): + file_name = "" + file_extension = "" + folder_path = os.path.abspath(test) + folder_name = os.path.basename(folder_path) + else: + file_name = "" + file_extension = "" + folder_path = "" + folder_name = "" + + return file_name, file_extension, folder_name, folder_path