Python3,25行代码,清理电脑版微信重复缓存,电脑从此健步如飞,建议收藏!!
清理微信重复缓存
- 1、引言
- 2、glob模块
- 2.1 缓存路径介绍
- 2.1.1电脑端
- 2.1.2 手机端
- 2.2 glob介绍
- 2.2.1 通配符介绍
- 2.2.2 方法介绍
- 2.2.3 提升效率
- 2.3 crc32
- 3、代码实战
1、引言
小屌丝:鱼哥,磁盘多少钱?
小鱼:你想要啥样的:拼多多上的, 淘宝上的,京东上的,还是实体店里的?
小屌丝:我就是单纯的想把我的电脑增加点容量~何苦这么难为我??
小鱼:我记得你的电脑,不是刚增加不就,怎么又满了?
小屌丝:说的我那啥似的…我这都是微信缓存占的!
小鱼:说的像真的似的,如果不是微信缓存的原因,咋办?
小屌丝:你先处理完…再说~ ~
小鱼:这…整吧…
2、glob模块
2.1 缓存路径介绍
在介绍glob模块之前,我们先来说一下缓存的路径。
2.1.1电脑端
电脑端路径:
C:\Users\用户名\Documents\WeChat Files\微信名\FileStorage,
这是默认安装,存储的路径地址;
如果自定义安装,那地址另议。
2.1.2 手机端
手机端存储路径:
内部存储设备→Android→data→com.tecent.mm→MicroMsg→Download
这就拿Android手机举例;
2.2 glob介绍
2.2.1 通配符介绍
符号 | 功能 |
---|---|
* | 匹配0或多个字符 |
** | 匹配所有文件,目录,子目录和子目录里面的文件 |
? | 匹配一个字符,这里与正则表达式? (正则?匹配前面表达式0次或者1次) |
[] | 匹配指定范围内的字符,如: [1-9]匹配1至9内的字符 |
[!] | 匹配不在指定范围内的字符 |
2.2.2 方法介绍
1、当前文件下所有py路径:
#当前文件下所有py路径
for ftname in glob.glob("**/*.py",recursive=True):print(f'文件输出结果为{ftname}')
2、当前路径文件tmp下py文件
#当前路径文件tmp下py文件
for ftname in glob.glob("./tmp/*.py"):print(f'文件输出结果为{ftname}')
3、单字通配符?,当前路径文件下以file开头后有一个字符的py文件:
#当前路径文件下以file开头后有一个字符的py文件
for ftname in glob.glob("./file?.py"):print(f'文件输出结果为{ftname}')
4、范围通配符[],当前路径文件下以file开头后一个数字符的py文件:
#当前路径文件下以file开头后一个数字符的py文件
for ftname in glob.glob("./file[0-9].py"):print(f'文件输出结果为{ftname}')
5、范围通配符[],当前路径文件下以file开头后一个非数字符的py文件:
#当前路径文件下以file开头后一个非数字符的py文件
for ftname in glob.glob("./file[!0-9].py"):print(f'文件输出结果为{ftname}')
2.2.3 提升效率
小屌丝:鱼哥,你这返回的执行速度不够快啊!
小鱼:也对,鉴于你每天撩妹的信息量巨大,我要使用杀手锏。
鉴于小屌丝这种情况,我们就使用glob模块iglob, 返回iterator执行效率更高,代码如下:
#当前路径文件tmp下py文件,使用iglob,返回迭代器效率更高
for ftname in glob.iglob("./tmp/*.py"):print(f'文件输出结果为{ftname}')
2.3 crc32
- CRC32 算法概述 CRC 全称 Cyclic Redundancy Check,又叫循环冗余校验。
- 和 md5 码一样都是 hash 的。
- 当两个文件内容的 CRC32 相同的时候,这个文件也就是相同的。
- 反之,两个文件就是不同的文件。
编写代码
# -*- coding: utf-8 -*-
# @Time : 2021-10-17
# @Author : carl_DJdef crc32(file_path):with open(file_path, 'rb') as fh:hash = 0while True:s = fh.read(1024)if not s:breakhash = zlib.crc32(s, hash)return "%08X" % (hash & 0xFFFFFFFF)
3、代码实战
写代码之前,我们先捋一下思路,很简单,就三步:
- 第一步,使用glob进行全盘扫描文件
- 第二步,扫描的文件的crc32值放入字典中
- 第三步,删除字典中crc32的值
编写代码
# -*- coding: utf-8 -*-
# @Time : 2021-10-17
# @Author : carl_DJ'''
1、使用glob.glob进行全盘文件扫描
2、把文件的crc32值放入字典中
3、删除字典中的crc32的值'''import os
import zlib
import glob#扫描文件,并删除重复文件
def scan_floder(glob_path):#设置一个空字典crc32Dict = {}#查找当前路径下的文件for ftname in glob.glob(glob_path,recursive=True):if os.path.isfile(ftname):#crc32![在这里插入图片描述](https://img-blog.csdnimg.cn/62798c261fd5411f8905139303702686.png?x-oss-process=image/watermark,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBAQ2FybF_lpZXnhLY=,size_20,color_FFFFFF,t_70,g_se,x_16#pic_center)crc = crc32(ftname)if crc in crc32Dict:print(f'已经存在的文件:{crc32Dict.get(crc)}')print(f'重复文件:{ftname}')print(f'删除文件:{ftname}')#删除重复的文件os.remove(ftname)else:crc32Dict[crc] = ftname#把文件的crc32值存入到字典中
def crc32(file_path):with open(file_path,'rb') as f:hash = 0while True:s = f.read(1024)if not s:breakhash = zlib.crc32(s,hash)return "%08X" %(hash & 0xFFFFFFFF)if __name__ == '__main__':scan_floder(r'C:\Users\用户名\Documents\WeChat Files\微信名称\FileStorage\xxx')
运行结果
小屌丝:我去~ 可以啊鱼哥。
小鱼:必须的,是不是突然觉得腰不疼腿不酸,CUP运行可起劲了!
小屌丝:鱼哥,还是你懂我~ ~
小鱼:给你一个眼神,自己体会!
其实手机端跟电脑端的清理机制差不多, 只是路径不一样。
所以,手机版的,我就不展示了。
1.手机USB链接电脑,
2.代码中路径输入手机端的路径即可。
Python3,25行代码,清理电脑版微信重复缓存,电脑从此健步如飞,建议收藏!!相关推荐
- 在通用计算机内pc是指什么地方,电脑版微信保存的文件在哪里?PC端微信文件保存位置是什么?...
随着微信越来越融入大家的生活,大家越发依赖微信,人们在微信中进行大量私人社交.办公等行为:聊天.接收文件等.无法使用手机时人们需要用到电脑版微信,在电脑版微信里,接收文件之后如何找到文件的保存位置?P ...
- C语言微信控制windows电脑代码,Windows电脑版微信实现多开 无需第三方软件(bat命令实现)...
如何使用电脑同时登录多个微信?由于软件的限制无法让PC端电脑板微信多开.电脑版微信多开很简单,不需要第三方软件,下面就介绍一下如何多开电脑版微信. 操作步骤 1.查看微信安装路径:选中微信程序快捷方式 ...
- 手把手带你清理电脑版微信冗余资源
手把手带你清理电脑版微信冗余资源 文章目录 手把手带你清理电脑版微信冗余资源 正文 0. 痛点 1. 检查 MacOS 系统资源占用情况 2. 删除电脑版微信冗余空间 其他资源 参考连接 正文 真的是 ...
- 电脑版微信怎么看朋友圈_电脑上也可以看朋友圈,99%的人都不知道!
作为国民APP微信,每天都在用!肯定很多人在想怎么样在电脑上也能使用微信,特别是在电脑上怎么样打开朋友圈? 今天WHO哥就把操作方法分享给大家. 首先,在电脑下载"电脑管家"(腾讯 ...
- 电脑版微信dat文件用什么软件打开
1-4 一般来说,凡是说到微信电脑版的DAT文件,指的都是聊天过程中收发的图片,加密保存在电脑里. 这些文件正常情况下也只能在微信登录后,在微信里查看,因为微信加密的当然只有微信才能解密. 那有没有第 ...
- 如何实现一台电脑同时登录多个电脑版微信? Windows10
参考之后原文:如何实现一台电脑同时登录多个电脑版微信? 实现步骤如下: 第一.首先我们选择桌面的微信图标,然后右键点击"属性". 第二.复制属性对话框中目标位置的代码(地址). 第 ...
- 【Python】解决最新电脑版微信[22-06]聊天文件统一按用户归类到MsgAttach文件夹的问题
[Python]解决最新电脑版微信[22-06]聊天文件统一按用户归类到MsgAttach文件夹的问题 背景 前提 代码 版本1 版本2 背景 最近,微信又更新了,但这一版本的聊天文件安排方式变化有点 ...
- 代码内容变成图片_网站只剩25行代码,真有程序员“删库跑路”?
"可能我删了数据才会轻松吧 可能我格了硬盘才会休息吧 可能逃出了公司我就跑到天边 可能我还没找到 那个BUG--" 曾经,有一位程序员,在某个加班的深夜,一边听着<可能否&g ...
- 老板到底能不能,监控到电脑版微信聊天?
这是「进击的Coder」的第 423 篇技术分享 作者:车小胖 来源:车小胖谈网络 " 阅读本文大概需要 3 分钟. " 三个月前其实已经写了一篇,但是在那篇文章里只提到了网页版微 ...
最新文章
- C 语言判断大端小端
- 虚拟主机评测网已经崭露头角
- php curl post 超时设置,在PHP中设置curl的超时参数(timeout)
- Docker 入门(1)虚拟化和容器
- Django使用n内置模块发送HTML格式的邮件
- 页面自动刷新,页面自动跳转
- matplotlib数据可视化实战——饼状图+雷达图+三维图
- github克隆仓库加速
- php环境Unknown column ‘*‘ in ‘field list‘解决方案
- C# 线程手册 第三章 使用线程 Monitor.Wait() 和 Monitor.Pulse()
- oracle数据库驱动下载(ojdbc)
- java计算机毕业设计基于web旅游网站的设计与实现源码+数据库+系统+lw文档+mybatis+运行部署
- 计算机管理中看不到iis,win10找不到“internet信息服务(IIS)管理器”怎么办
- Macbook外接windows键盘,设置快捷键
- Android高仿淘宝订单列表效果,列表中嵌套列表
- codeforces 884F 费用流,图解很清晰
- Python切图九宫格
- SVAC国家标准介绍
- 服务器白屏是系统在更新吗,远程服务器白屏怎么处理
- 2021软科大学排名爬虫程序
热门文章
- 大数据获客系统及源码5
- 拥有4k、8k高清壁纸资源的网站,随时更换手机心情
- linux ssr客户端 npmjs,umijs使用服务器端渲染ssr
- android 墨迹天气背景,GitHub - xiangzhihong/android: 仿墨迹天气折线,以及背景滚动效果...
- QIIME2进阶六_QIIME2训练分类器及物种注释
- form表单校验复杂系列--- form表单内插入独立的数据表格,动态校验数据表格内每行的文件上传
- 【Vue】Vue2知识点总结
- 微信小程序分析送积分功能如何实现_微信小程序积分商城系统如何裂变营销购物?...
- 百度小程序和微信小程序,开放与封闭之争
- 微信小程序 首行缩进无效