定时删除微信文件夹中重复文件

问题描述

PC端微信在翻看聊天记录时,对于文件会反复接收,然后你就会发现文件夹会有一大堆文件是重复的。重复的文件名用括号+数字进行了修改。虽然大家都在吐槽这个问题,可是微信死活还是没有对这个bug进行解决。那么, 如何解决这个问题呢?

##分析

  • 文件夹禁止写入。导致文件无法接收,不可取。
  • 阻止重复接收。在微信接收文件前,先对本地文件进行检查,若重复,则不接收。可想象总是美好的,臣妾做不到啊。
  • 删除文件夹中重复文件。这属于是灾难发生后的挽救措施,也是没有办法的办法了。首先利用脚本通过一定的正则表达式规则可以找出重复的文件,其次就是创建一个定时任务,定时执行一遍写好的脚本即可将重复文件清理掉。

本文的实验环境是 Python 3.6.1 |Anaconda 4.4.0 (64-bit),Win10

Python脚本

创建 del_repeat_file.py 文件,其中代码如下:

# -*- coding: utf-8 -*-
# Author:gaozhengjie
# Blog:https://www.jianshu.com/u/02877dbc2662
# E-mail:[email protected]
# Python Version:3.6.1
# Time:2018/1/12
# Description:删除微信文件夹中重复文件

import os
import re

filename_regex = re.compile(r'.*\(\d+\)\..*')
# 将下面的路径替换为你自己的微信文件夹路径
wechat_file_path = "C:\\Users\\gzj\\Documents\\WeChat Files\\gzjie678\\Files"
file_list = os.listdir(wechat_file_path)
print('\n' + '*' * 50 + '\n')
for i in file_list:
	temp = filename_regex.search(i)
	if temp != None:
		del_path = wechat_file_path + '\\' + temp.group()
		print(del_path)
		os.remove(del_path)  # 永久删除指定路径的文件
print('\n' + '*' * 50)

##批处理运行Python脚本
创建 start_del_WeChat_file.bat 文件,其中代码如下:

start python F:\PythonProject\del_repeat_file.py

创建定时任务

  1. Win10系统下,鼠标右键点击“开始”图标按钮,在弹出的菜单选项框中找到“计算机管理”选项并点击它。如图1所示;

定时删除微信文件夹中重复文件_第1张图片

  1. 在弹出来的计算机管理窗口中,选择 系统工具 中的 任务计划程序,再选择 创建基本任务...创建任务... 均可,前者是向导模式,后者则是高级模式,可供设置的选项更多。

定时删除微信文件夹中重复文件_第2张图片

  1. 以向导模式为例,你顺着下一步走就行了,在操作那一栏选择 启动程序,然后选择刚才创建的 bat批处理文件, 如图3所示。

定时删除微信文件夹中重复文件_第3张图片

  1. 大功告成。

开机自启动

如果你觉得你电脑每天定时清理不方便,也可以将该批处理脚本设置为开机自启动,直接将这个批处理脚本文件拷贝至 C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Startup 即可实现开机自运行。

你可能感兴趣的:(python,微信,python,正则表达式)