From 3a79f22315586d97a71ba2c99b8aaa39145fd982 Mon Sep 17 00:00:00 2001 From: Kameron Kenny <1267885+kkenny@users.noreply.github.com> Date: Wed, 2 Oct 2024 16:27:13 -0400 Subject: [PATCH] time and date utils --- __model.py | 0 _time_and_date_utils.py | 39 +++++++++++++++++++++++++++++++++++++++ 2 files changed, 39 insertions(+) create mode 100644 __model.py create mode 100644 _time_and_date_utils.py diff --git a/__model.py b/__model.py new file mode 100644 index 0000000..e69de29 diff --git a/_time_and_date_utils.py b/_time_and_date_utils.py new file mode 100644 index 0000000..fb4c46e --- /dev/null +++ b/_time_and_date_utils.py @@ -0,0 +1,39 @@ +import time +from datetime import datetime + +def convert_from_seconds(seconds): + return time.strftime("%H:%M:%S", time.gmtime(seconds)) + +def set_generic_date_time(datestamp='1900:01:01', + timestamp='00:00:00', + f='%Y:%m:%d %H:%M:%S'): + t = datetime.strptime(str(f'{datestamp} {timestamp}'), f) + return t + +def process_img_date_tag(tag, image_tags, date_time_format): + try: + t = datetime.strptime(str(image_tags[tag]), date_time_format) + except: + t = None + return t + +def get_img_date(image_tags): + t = None + + for tag in image_tags: + if 'DateTime' in tag: + t = tag + break + + for f in ['%Y:%m:%d %H:%M:%S', + '%Y/%m/%d %H:%M:%S', + '%Y-%m-%d-%H-%M-%S']: + dt_tag = process_img_date_tag(t,image_tags,f) + + if dt_tag is not None: + break + + if dt_tag is None: + dt_tag = set_generic_date_time() + + return dt_tag \ No newline at end of file