Guest User

WatchDogModified

a guest
Dec 25th, 2017
2,424
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.40 KB | None | 0 0
  1. import time
  2. from watchdog.observers import Observer
  3. from watchdog.events import FileSystemEventHandler
  4. import sys
  5. import subprocess
  6. import os
  7. old = 0
  8. mainPath = os.getcwd()
  9. class Watcher:
  10.     DIRECTORY_TO_WATCH = sys.argv[1]
  11.     def __init__(self):
  12.         self.observer = Observer()
  13.  
  14.     def run(self):
  15.         event_handler = Handler()
  16.         self.observer.schedule(event_handler, self.DIRECTORY_TO_WATCH, recursive=True)
  17.         self.observer.start()
  18.         try:
  19.             while True:
  20.                 time.sleep(5)
  21.         except:
  22.             self.observer.stop()
  23.             print("Error")
  24.  
  25.         self.observer.join()
  26.  
  27.  
  28. class Handler(FileSystemEventHandler):
  29.  
  30.     @staticmethod
  31.     def on_any_event(event):
  32.         global old
  33.         if event.is_directory:
  34.             return None
  35.  
  36.         elif event.event_type == 'created':
  37.             # Take any action here when a file is first created.
  38.             print("Received created event - %s." % event.src_path)
  39.  
  40.  
  41.         elif event.event_type == 'modified':
  42.             statbuf = os.stat(filename)
  43.             new = statbuf.st_mtime
  44.             print(str(new) + " is new")
  45.             print(str(old) + " is old")
  46.             if (new - old) > 0.5:
  47.                 print("Received modified event - %s." % event.src_path)
  48.                 # Do any action here.
  49.             old = new
  50.  
  51.  
  52. if __name__ == '__main__':
  53.     w = Watcher()
  54.     w.run()
Add Comment
Please, Sign In to add comment