2016-07-12 15 views
0

Ich versuche, den Namen einer Datei zu erhalten, die sich in regelmäßigen Abständen ändert. Ich benutze Watchdog, um dies zu tun.Abrufen des Dateinamens mit Python Watchdog

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

timestr = time.strftime("%Y.%m.%d-%H.%M.%S") 

class MyHandler(FileSystemEventHandler): 
    def on_modified(self, event): 
     change_log = open('change_log_' + timestr + '.txt', 'aw') 
     change_log.write('Time the file changed: ' + timestr + '\n') 
     change_log.close() 

if __name__ == "__main__": 
    event_handler = MyHandler() 
    observer = Observer() 
    observer.schedule(event_handler, path='.', recursive=False) 
    observer.start() 

    try: 
     while True: 
      time.sleep(1) 
    except KeyboardInterrupt: 
     observer.stop() 
    observer.join() 

Aus irgendeinem Grund druckt dies etwa 62 Zeilen in der "change_log" -Datei. Dies ist nicht sehr nützlich. Was ich tun möchte, ist, den Namen der Datei, die geändert hat, zu drucken, oder speichern Sie es in einer Variablen, um an mein anderes Modul zu übergeben.

Antwort

Verwandte Themen