Python看门狗-如何仅在创建文件时查看?

时间:2019-01-31 00:14:15

标签: python python-watchdog

Watchdog Quickstart中,我可以看到所有事件,例如何时修改文件夹,删除文件,创建文件等。但是,我只想查看何时创建文件。我必须更改什么才能只查看创建的文件?

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()

2 个答案:

答案 0 :(得分:1)

您可能想看看watchdog.events LoggingEventHandler。除了启动LoggingEventHandler模​​块(我认为可以处理所有文件系统事件)之外,您所附加的代码与跟踪特定的文件系统操作没有任何关系?

答案 1 :(得分:0)

您将需要基于for s in strategies: strats_having_fcs = {a.strategy: a.algorithmType for a in s.algorithms if a.algorithmType == AlgorithmTypeEnum.feedback_control.value} 创建自己的事件处理程序类。您将覆盖FileSystemEventHandler方法来处理收到的事件。