Python代码示例:使用watchdog.observersObserver()监控文件夹中新文件的出现
发布时间:2024-01-10 15:23:06
下面是一个使用watchdog.observers.Observer()来监控文件夹中新文件出现的Python代码示例:
import time
from watchdog.observers import Observer
from watchdog.events import FileSystemEventHandler
class MyHandler(FileSystemEventHandler):
def on_created(self, event):
if not event.is_directory: # 判断事件是否为文件创建事件
print(f"文件 {event.src_path} 已创建")
if __name__ == "__main__":
path = "/path/to/folder" # 要监控的文件夹路径
event_handler = MyHandler() # 创建事件处理器
observer = Observer() # 创建观察者
observer.schedule(event_handler, path, recursive=True) # 将事件处理器与观察者绑定
observer.start() # 启动观察者
try:
while True:
time.sleep(1)
except KeyboardInterrupt:
observer.stop() # 停止观察者
observer.join() # 等待观察者停止
以上代码示例实现了一个自定义的FileSystemEventHandler,重写了其中的on_created()方法以便在文件创建事件发生时输出相应的提示信息。然后通过Observer来创建一个观察者,并将事件处理器与观察者绑定。最后,启动观察者以开始监控文件夹中新文件的出现。当观察者启动后,程序将进入一个无限循环并使用time.sleep(1)来保持运行状态,直到按下Ctrl+C终止程序执行。在终止程序后,观察者将被停止并等待其完成所有操作。
要使用以上代码示例,你需要将/path/to/folder替换为实际的文件夹路径,然后运行代码即可开始监控指定文件夹中的新文件出现。
