首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何使用python检查文件夹中的文件是否已完全下载

如何使用python检查文件夹中的文件是否已完全下载
EN

Stack Overflow用户
提问于 2020-03-16 01:47:03
回答 2查看 1.8K关注 0票数 1

我正在编写一个python脚本,它负责组织您的下载文件夹,将每种类型的文件安排在一个单独的文件夹中。我正在使用watchdog检查下载文件夹中的修改。如果有东西开始下载,脚本就会运行,尽管我想等到下载完成后再运行我的脚本。

我不知道如何使用python检查下载文件是否已完全下载。

我已经包含了代码来展示我的脚本基本上是如何工作的。

代码语言:javascript
运行
复制
class ShiftingFiles(FileSystemEventHandler):
"""
This class is going to allow us to override the FileSystemEventHandler
methods.
"""
# Overriding the on_modified() method of FileSystemEventHandler class
# in the watchdog API
def on_modified(self, event):
    self.shift()



if __name__ == "__main__":
    # To shift the files as soon as the program is run
    ShiftingFiles().shift()
    # Consuming watchdog API
    event_handler = ShiftingFiles()
    observer = Observer()
    observer.schedule(event_handler, download_location, recursive=False)
    observer.start()
    try:
        while True:
            time.sleep(1000)
    except KeyboardInterrupt:
        observer.stop()
    observer.join()
EN

回答 2

Stack Overflow用户

发布于 2020-03-18 23:20:09

我也遇到过类似的问题,这对我来说是可行的。等待文件传输完成后再进行处理:

代码语言:javascript
运行
复制
def on_modified(self, event):
        file_size = -1
        while file_size != os.path.getsize(event.src_path):
            file_size = os.path.getsize(event.src_path)
            time.sleep(1)

        self.shift()
票数 1
EN

Stack Overflow用户

发布于 2020-03-16 01:53:36

我认为这不是更好的解决方案,但你可以每隔1分钟查看一次修改日期,如果相同,则认为文件已完成。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60695881

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档