Add a limit of images to process

This commit is contained in:
Antonio J. Delgado 2023-10-02 20:33:18 +03:00
parent 232a48faef
commit 7b1aa22050

View file

@ -51,7 +51,8 @@ class CustomFormatter(logging.Formatter):
class image_classifier: class image_classifier:
def __init__(self, debug_level, log_file, faces_directory, directory, def __init__(self, debug_level, log_file, faces_directory, directory,
no_move, people_folder, recursive, folder_date_format): no_move, people_folder, recursive, folder_date_format,
limit):
''' Initial function called when object is created ''' ''' Initial function called when object is created '''
self.debug_level = debug_level self.debug_level = debug_level
if log_file is None: if log_file is None:
@ -72,12 +73,17 @@ class image_classifier:
self.people_folder = people_folder self.people_folder = people_folder
self.recursive = recursive self.recursive = recursive
self.folder_date_format = folder_date_format self.folder_date_format = folder_date_format
self.limit = limit
if self.recursive: if self.recursive:
entries = self.recursive_scandir(directory) entries = self.recursive_scandir(directory)
else: else:
entries = list() entries = list()
count = 0
for entry in os.scandir(directory): for entry in os.scandir(directory):
count += 1
if count > limit:
break
entries.append(entry) entries.append(entry)
self._log.debug(f"Processing {len(entries)} files...") self._log.debug(f"Processing {len(entries)} files...")
for entry in entries: for entry in entries:
@ -415,13 +421,18 @@ for files in the provided --directory')
help='Format for the folder with the file date according to \ help='Format for the folder with the file date according to \
https://docs.python.org/3/library/datetime.html#strftime-strptime-behavior' https://docs.python.org/3/library/datetime.html#strftime-strptime-behavior'
) )
@click.option(
'--limit', '-l',
default=1000,
help='Limit the number of files to process'
)
@click_config_file.configuration_option() @click_config_file.configuration_option()
def __main__(debug_level, log_file, faces_directory, directory, no_move, def __main__(debug_level, log_file, faces_directory, directory, no_move,
people_folder, recursive, folder_date_format): people_folder, recursive, folder_date_format, limit):
return image_classifier( return image_classifier(
debug_level, log_file, faces_directory, directory, debug_level, log_file, faces_directory, directory,
no_move, people_folder, recursive, no_move, people_folder, recursive,
folder_date_format folder_date_format, limit
) )