我有一个脚本来扫描目录,看看什么时候添加了新文件,然后处理它们的内容。它们是视频文件,所以它们通常非常大,并且通过网络传输,而且传输通常需要很长时间。所以我需要确保他们在继续之前已经完成了复制。在
现在,一旦我在我使用的目录中找到了一个新文件路径.mtos检查修改日期,并将其与上次扫描文件的时间进行比较,以查看是否仍在修改。理论是,如果它不再被修改,那么它应该完成转移。在
if getmtime(path.join(self.rootFolder, thefile)) < self.lastchecktime: newfiles.append[thefile]
但这似乎不起作用-脚本过早触发,处理失败,因为文件没有完全加载。是不是扫描之间没有足够的停顿时间来保持m时间不变…?我给它10秒的扫描间隔-这应该足够了,当然。在
有没有一种更简单/更像Python的方法?这些文件位于在虚拟机上运行的windows服务器上。在
你的支票不是“我的修改时间比上次检查的时间长吗?”。在
我不是一个windows用户,但我确信会有一些与inotifyforwindows相当的库。这是在文件系统级别监听文件或目录更改的非常好的方法。我将留下一些在linux上使用pyinotify的示例代码,这将对使用linux的人有所帮助。在
^{pr2}$你能控制文件的添加吗?如果是这样的话,您可以在视频上传完成后创建一个名为
videoname-complete
的空文件,并监视这些文件。在相关问题 更多 >
编程相关推荐