[Python] 纯文本查看 复制代码
import win32file
import win32con
import winreg
import os
# 定义注册表路径和键名
reg_path = r"SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders"
key = 'Personal'
# 打开注册表
reg = winreg.ConnectRegistry(None, winreg.HKEY_CURRENT_USER)
# 打开注册表项
reg_key = winreg.OpenKey(reg, reg_path)
# 获取键值
value, regtype = winreg.QueryValueEx(reg_key, key)
# 微信文档文件夹
wx_path = value + '\\WeChat Files\\'
# 监控的文件夹路径
path_to_watch = wx_path
# 指定要监控的文件类型
file_filter = "*.txt;*.docx;*.doc;*.xls;*.xlsx;*.ppt;*.pptx"
# 创建一个新的文件变化事件
hDir = win32file.CreateFile(
path_to_watch,
0x0001,
win32con.FILE_SHARE_READ | win32con.FILE_SHARE_WRITE | win32con.FILE_SHARE_DELETE,
None,
win32con.OPEN_EXISTING,
win32con.FILE_FLAG_BACKUP_SEMANTICS,
None
)
print('开始监控文件变化')
while True:
# 等待文件变化事件
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, file_name in results:
full_path = path_to_watch + "\\" + file_name
if file_name.endswith(".txt") or file_name.endswith(".docx") or file_name.endswith(".doc") or file_name.endswith(".xls") or file_name.endswith(".xlsx") or file_name.endswith(".ppt") or file_name.endswith(".pptx"):
if action == 1:
print(f"Created: {full_path}")
os.chmod(full_path, 0o777)
print(full_path + '修改成功')
elif action == 2:
print()
elif action == 3:
print()
https://wwa.lanzoub.com/iXOB10ss35je