python3的第三方模块-watchdog文件系统监控的使用(python3经典编程案例)
Posted cui_yonghua
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python3的第三方模块-watchdog文件系统监控的使用(python3经典编程案例)相关的知识,希望对你有一定的参考价值。
原理是通过操作系统的时间触发的,不需要循环,也不需要等待。
如监控test文件夹下的动态:
from watchdog.observers import Observer
from watchdog.events import *
import time
class FileEventHandler(FileSystemEventHandler):
def __init__(self):
FileSystemEventHandler.__init__(self)
def on_moved(self, event):
super(FileEventHandler, self).on_moved(event)
now = time.strftime("%Y-%m-%d %H:%M:%S", time.localtime())
if event.is_directory:
print(f" now 文件夹由 event.src_path 移动至 event.dest_path ")
else:
print(f" now 文件由 event.src_path 移动至 event.dest_path ")
def on_created(self, event):
super(FileEventHandler, self).on_created(event)
now = time.strftime("%Y-%m-%d %H:%M:%S", time.localtime())
if event.is_directory:
print(f" now 文件夹 event.src_path 创建")
else:
print(f" now 文件 event.src_path 创建")
def on_deleted(self, event):
super(FileEventHandler, self).on_deleted(event)
now = time.strftime("%Y-%m-%d %H:%M:%S", time.localtime())
if event.is_directory:
print(f" now 文件夹 event.src_path 删除")
else:
print(f" now 文件 event.src_path 删除")
def on_modified(self, event):
super(FileEventHandler, self).on_modified(event)
now = time.strftime("%Y-%m-%d %H:%M:%S", time.localtime())
if event.is_directory:
print(f" now 文件夹 event.src_path 修改")
else:
print(f" now 文件 event.src_path 修改")
if __name__ == "__main__":
observer = Observer()
path = r"test/"
event_handler = FileEventHandler()
observer.schedule(event_handler, path, True)
print(f"监控目录 path")
observer.start()
observer.join()
以上是关于python3的第三方模块-watchdog文件系统监控的使用(python3经典编程案例)的主要内容,如果未能解决你的问题,请参考以下文章
python 监目录文件变动,然后在做些其它的操作,watchdog 详细解答