watchdog python 監控多個文件路徑下 新增的文件名,并將文件名字,提取 保存到excel文本中
时间: 2024-09-16 08:04:47 浏览: 52
Watchdog是一个Python库,用于监控文件系统的变化,包括新文件、修改的文件以及删除的文件。如果你想监控多个文件路径下的新增文件并将文件名保存到Excel中,可以按照以下步骤操作:
1. 首先安装必要的库,如`watchdog`, `openpyxl`(用于处理Excel文件)和`pathlib`(处理文件路径):
```bash
pip install watchdog openpyxl pathlib
```
2. 使用`watchdog`创建一个事件处理器,这个处理器会在检测到文件变化时触发:
```python
import time
from pathlib import Path
from watchdog.observers import Observer
from watchdog.events import FileSystemEventHandler
from openpyxl import Workbook
class FileHandler(FileSystemEventHandler):
def __init__(self):
self.workbook = Workbook()
self.worksheet = self.workbook.active
self.worksheet.append(['File Name'])
def on_created(self, event):
if event.is_directory:
return
file_path = Path(event.src_path)
file_name = file_path.name
self.worksheet.append([file_name])
def save_to_excel(self):
file_name = "file_monitor.xlsx"
self.workbook.save(file_name)
# 初始化并开始监听
handler = FileHandler()
observer = Observer()
observer.schedule(handler, paths_to_watch, recursive=True)
observer.start()
try:
while True:
time.sleep(1) # 每秒检查一次,可根据需求调整时间间隔
except KeyboardInterrupt:
observer.stop()
observer.join()
handler.save_to_excel() # 当程序退出时,保存文件信息到Excel
```
在这个例子中,你需要将`paths_to_watch`替换为你想要监控的具体文件夹路径列表。
阅读全文