在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()
答案 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
方法来处理收到的事件。