You need to unzip, attach the file to the root directory and compare:
import os, time
_dir = os.getcwd()
files = (fle for rt, _, f in os.walk(_dir) for fle in f if time.time() - os.stat(
os.path.join(rt, fle)).st_mtime < 300)
print(list(files))
os.stat(filename).st_mtimereturns a time that cannot be repeated, you need to compare this time with the current time, time.time()it returns seconds from an era, so you need to compare the difference between time.time() - os.stat(os.path.join(rt, fle)).st_mtimeand the number of minutes in seconds, i.e. 300 in your case.
, watchdog, , :
import sys
import time
import logging
from watchdog.observers import Observer
from watchdog.events import LoggingEventHandler
if __name__ == "__main__":
logging.basicConfig(level=logging.INFO,
format='%(asctime)s - %(message)s',
datefmt='%Y-%m-%d %H:%M:%S')
path = sys.argv[1] if len(sys.argv) > 1 else '.'
event_handler = LoggingEventHandler()
observer = Observer()
observer.schedule(event_handler, path, recursive=True)
observer.start()
try:
while True:
time.sleep(1)
except KeyboardInterrupt:
observer.stop()
observer.join()
.