Directory Monitoring with Watchdog Library

  • Share this:

Code introduction


This function is used to monitor changes in a specified directory using the watchdog library. When files change, an event handler is triggered.


Technology Stack : watchdog, Observer, FileSystemEventHandler

Code Type : The type of code

Code Difficulty : Intermediate


                
                    
import os
from watchdog.observers import Observer
from watchdog.events import FileSystemEventHandler

def monitor_directory(path, event_handler):
    """
    Monitor a directory for changes using watchdog library.
    """
    event_handler.directory = path
    observer = Observer()
    observer.schedule(event_handler, path, recursive=True)
    observer.start()
    try:
        while True:
            time.sleep(1)
    except KeyboardInterrupt:
        observer.stop()
    observer.join()