Python:阻止看门狗对部分传输的文件做出反应?

时间:2017-02-10 20:54:24

标签: python python-2.7 watchdog python-watchdog

我之前使用python编写了一个脚本,该脚本监视Windows目录并将任何新文件上传到远程服务器。目的是始终运行它,并允许用户将其文件转储到那里以与云目录同步。

当添加的文件足够大以至于不会同时传输到本地驱动器时,Watchdog会“看到”它,因为它已部分上传并尝试上传部分文件,但该文件失败。如何确保这些文件在上传之前“完整”?同样,我在Windows上,除了Windows之外不能使用任何东西来完成这项任务,或者我会使用inotify。甚至可以在Windows上以这种方式检查文件的“状态”吗?

1 个答案:

答案 0 :(得分:0)

看起来没有简单的方法可以做到这一点。我认为您可以在触发时检查目录上的统计信息,并且仅在给定时间内检查文件夹大小未发生变化的操作:

https://github.com/gorakhargosh/watchdog/issues/184

作为旁注,我会查看Apache Nifi。我已经使用它取得了很大的成功,并且很容易启动和运行 https://nifi.apache.org/