watchdog python實例化一個監控多個文件夾内新增文件的脚本
时间: 2024-09-17 14:01:04 浏览: 7
在Python中,你可以使用`watchdog`库来监控多个文件夹内的新文件。首先,你需要安装`watchdog`,可以使用pip命令:
```bash
pip install watchdog
```
接下来是一个简单的例子,创建一个脚本来监控指定的文件夹并检测新添加的文件:
```python
from watchdog.observers import Observer
from watchdog.events import FileSystemEventHandler
class NewFileHandler(FileSystemEventHandler):
def on_created(self, event):
if event.is_directory:
return
print(f"New file detected: {event.src_path}")
# 定义要监控的文件夹列表
folders_to_watch = ['/path/to/folder1', '/path/to/folder2']
# 创建事件处理器实例
handler = NewFileHandler()
# 初始化观察者
observer = Observer()
# 遍历每个文件夹,并为每个文件夹注册事件监听
for folder in folders_to_watch:
observer.schedule(handler, folder, recursive=True)
# 开始观察
try:
observer.start()
print("Monitoring started. Press Ctrl+C to stop.")
while True:
pass
except KeyboardInterrupt:
observer.stop()
finally:
# 关闭观察者,释放资源
observer.join()
```
在这个脚本中,我们创建了一个`NewFileHandler`类,它继承自`FileSystemEventHandler`。每当文件系统有新的文件创建时,`on_created`方法会被触发。然后,我们在多个文件夹上配置了这个事件处理器。