删除后可以使用看门狗获取文件大小吗?

时间:2019-04-23 07:42:39

标签: python tkinter python-watchdog

我创建了一个python脚本来监视文件夹中的文件更改。我可以使用默认的看门狗事件侦听器(on_createdon_deleted等)捕获所有事件。我将每个新文件的大小保存在一个数组(file_size_array中),当用户删除该文件时,我必须从file_size_array中删除该删除文件的大小,以确保行为准确。

因此,我尝试在“ on_deleted”事件中获取已删除文件的大小,但它抛出FileNotFoundError。我还尝试了“ on_any_event”方法来捕获已删除的事件并在那里获取文件大小,但仍然会抛出FileNotFoundError

我尝试过:

def on_deleted(self, event):
    print(os.path.getsize(event.src_path))

也尝试过:

def on_any_event(self, event):
    if event.event_type == "deleted":
        print(os.path.getsize(event.src_path))

但仍然得到FileNotFoundError

我只想在删除文件后立即从file_size_array中删除文件的大小来获取文件的大小。我无法将整个file_size_array与其余文件进行比较,因为文件数量巨大,所以我觉得这太过分了。为此可能存在一个简单的解决方案。大家有什么想法吗?

0 个答案:

没有答案