import time from watchdog.observers import Observer from watchdog.events import FileSystemEventHandler from pathlib import Path class FileChangeHandler(FileSystemEventHandler): def __init__(self, callback=None): self.callback = callback def on_modified(self, event): if not event.is_directory: if self.callback: self.callback(event.src_path) print(f"[Watcher] Datei geƤndert: {event.src_path}") def start_watcher(path: Path, callback=None): """Startet den File-Watcher in einem Hintergrundthread.""" event_handler = FileChangeHandler(callback=callback) observer = Observer() observer.schedule(event_handler, str(path), recursive=True) observer.start() return observer