首页 > 代码库 > 搬运:Python for Windows——监控Windows某个目录下文件的变化
搬运:Python for Windows——监控Windows某个目录下文件的变化
https://win32com.goermezer.de/content/view/286/285/
这个网站真是给力,不多说,代码直接搬运过来,还有我的测试结果,拿走不谢!
import os import sys import win32file import win32con ACTIONS = { 1: "Created", 2: "Deleted", 3: "Updated", 4: "Renamed from something", 5: "Renamed to something" } FILE_LIST_DIRECTORY = 0x0001 path_to_watch = ‘E:/test‘ print ‘Watching changes in‘, path_to_watch hDir = win32file.CreateFile( path_to_watch, FILE_LIST_DIRECTORY, win32con.FILE_SHARE_READ | win32con.FILE_SHARE_WRITE, None, win32con.OPEN_EXISTING, win32con.FILE_FLAG_BACKUP_SEMANTICS, None ) while 1: results = win32file.ReadDirectoryChangesW( hDir, 1024, True, win32con.FILE_NOTIFY_CHANGE_FILE_NAME | win32con.FILE_NOTIFY_CHANGE_DIR_NAME | win32con.FILE_NOTIFY_CHANGE_ATTRIBUTES | win32con.FILE_NOTIFY_CHANGE_SIZE | win32con.FILE_NOTIFY_CHANGE_LAST_WRITE | win32con.FILE_NOTIFY_CHANGE_SECURITY, None, None) for action, filename in results: full_filename = os.path.join(path_to_watch, filename) print full_filename, ACTIONS.get(action, "Unknown")
运行结果:
到这一步,后面可以做得就多了,可以写LOG,做统计,做预警,太爽啦!
搬运:Python for Windows——监控Windows某个目录下文件的变化
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。