Python帮你解决手机qq微信内存占用太多问题


Posted in Python onFebruary 15, 2022

导语:

哈喽,哈喽~大家有没有遇到过这种情况,手机用着用着没有内存了,一到设置里面一看。

微信和 QQ 10G!

啊这。。。。。就离谱!好说,好说,设置中都有一个清除数据的功能,一键下去内存暂时都回来了,但是宝,你确定你微信和QQ中的信息都没用吗?

​下面能小编就用 Python 写个删除重复文件的脚本清理这些微信和QQ空间。确保在清除内存的时候,你的重要信息还在。

 

正文:

glob 模块

glob 模块非常简单,就是用来查找文件和文件夹。查找文件只用到三个匹配符:"*", "?", "[]"。

通配符 功能

  • *:匹配0或多个字符
  • **:匹配所有文件,目录,子目录和子目录里面的文件
  • ?:匹配一个字符,这里与正则表达式? (正则?匹配前面表达式0次或者1次)
  • []:匹配指定范围内的字符,如: [1-9]匹配1至9内的字符
  • [!]:匹配不在指定范围内的字符

glob方法

这个方法返回所有匹配的文件路径列表

# 当前路径下所有 py 文件
for fname in glob.glob("**/*.py",recursive=True):
    print(fname)
 
# 当前路径文件 py 下 py 文件
for fname in glob.glob("py/*.py"):
    print(fname)
 
# 单字通配符 ?,当前路径文件下以 Tem 开头后有一个字符文件夹
for fname in glob.glob("Tem?"):
    print(fname)
 
# 范围通配符[],当前路径文件下以 Tem 开头后一个数字符的 py 文件
for fname in glob.glob("Tem[0-9].py"):
    print(fname)
 
# 范围通配符[!],当前路径文件下以 Tem 开头后一个非数字符的 py 文件
for fname in glob.glob("Tem[!0-9].py"):
    print(fname)
 
windowns下
file = glob.glob(r'D:\logs\*\*'

zlib.crc32

CRC32 算法概述 CRC 全称 Cyclic Redundancy Check,又叫循环冗余校验。和 md5 码一样都是 hash 的。当两个文件内容的 CRC32 相同的时候,这个文件也就是相同的。反之,两个文件就是不同的文件。

def crc32(file_path):
    with open(file_path, 'rb') as fh:
        hash = 0
        while True:
            s = fh.read(65536)
            if not s:
                break
            hash = zlib.crc32(s, hash)
        return "%08X" % (hash & 0xFFFFFFFF)

去重复

看到这里,想必都明白如何去重复文件了:

1. 用 glob.glob 扫描所有文件,

2. 把文件的 crc32 值放入字典中,

3. 找到字典中已经存在的 crc32 值的key,删除当前文件。

import os
import zlib
import glob
 
def scanning_floder(glob_path):
    
    crc32Dict = {}
    for fname in glob.glob(glob_path, recursive=True):
        if os.path.isfile(fname):
            crc = crc32(fname)
            if crc in crc32Dict:
                print('已经存在文件:' + crc32Dict.get(crc))
                print('重复文件:' + fname)
                print('删除文件:' + fname)
                os.remove(fname)
                print('')
            else:
                crc32Dict[crc] = fname
 
def crc32(file_path):
    with open(file_path, 'rb') as f:
        hash = 0
        while True:
            s = f.read(1024)
            if not s:
                break
            hash = zlib.crc32(s, hash)
        return "%08X" % (hash & 0xFFFFFFFF)
 
scanning_floder(r"C:\Users\xxxx\Documents\WeChat Files\xxxx\FileStorage\**\*")

Python帮你解决手机qq微信内存占用太多问题

总结

本篇介绍了 glob 模块的用法和 crc32 值的计算,大家学废了吗

到此这篇关于Python帮你解决手机qq微信内存占用太多问题的文章就介绍到这了,更多相关Python qq微信内存占用内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
用Python从零实现贝叶斯分类器的机器学习的教程
Mar 31 Python
requests和lxml实现爬虫的方法
Jun 11 Python
Python序列化基础知识(json/pickle)
Oct 19 Python
django将图片上传数据库后在前端显式的方法
May 25 Python
Django中日期处理注意事项与自定义时间格式转换详解
Aug 06 Python
Python读取excel指定列生成指定sql脚本的方法
Nov 28 Python
Django 缓存配置Redis使用详解
Jul 23 Python
python图形绘制奥运五环实例讲解
Sep 14 Python
pycharm 中mark directory as exclude的用法详解
Feb 14 Python
python实现简单颜色识别程序
Feb 19 Python
python 使用多线程创建一个Buffer缓存器的实现思路
Jul 02 Python
python 定义函数 返回值只取其中一个的实现
May 21 Python
python flappy bird小游戏分步实现流程
Python 居然可以在 Excel 中画画你知道吗
Feb 15 #Python
Python 恐龙跑跑小游戏实现流程
详解Python+OpenCV进行基础的图像操作
Appium中scroll和drag_and_drop根据元素位置滑动
Feb 15 #Python
python 远程执行命令的详细代码
Feb 15 #Python
python 详解turtle画爱心代码
You might like
人族 TERRAN 概述
2020/03/14 星际争霸
E路文章系统PHP
2006/12/11 PHP
学习YUI.Ext 第四天--对话框Dialog的使用
2007/03/10 Javascript
关于文本框的一些限制控制总结~~
2010/04/15 Javascript
详解JavaScript的表达式与运算符
2015/11/30 Javascript
浅析JS运动
2015/12/28 Javascript
JavaScript String 对象常用方法总结
2016/04/28 Javascript
Javascript获取图片原始宽度和高度的方法详解
2016/09/20 Javascript
js初始化验证实例详解
2016/11/26 Javascript
Node.js和Express简单入门介绍
2017/03/24 Javascript
详解IWinter 一个路由转控制器的 Nodejs 库
2017/11/15 NodeJs
ElementUI Tag组件实现多标签生成的方法示例
2019/07/08 Javascript
基于JS判断对象是否是数组
2020/01/10 Javascript
Vue 中 template 有且只能一个 root的原因解析(源码分析)
2020/04/11 Javascript
JavaScript进阶(四)原型与原型链用法实例分析
2020/05/09 Javascript
微信小程序实现首页弹出广告
2020/12/03 Javascript
[00:03]DOTA2新版本PA至宝展示
2014/11/19 DOTA
[06:07]DOTA2-DPC中国联赛 正赛 Ehome vs VG 选手采访
2021/03/11 DOTA
Python使用函数默认值实现函数静态变量的方法
2014/08/18 Python
python 如何快速找出两个电子表中数据的差异
2017/05/26 Python
python+matplotlib演示电偶极子实例代码
2018/01/12 Python
利用Python在一个文件的头部插入数据的实例
2018/05/02 Python
Python3实现爬取简书首页文章标题和文章链接的方法【测试可用】
2018/12/11 Python
python中的协程深入理解
2019/06/10 Python
Python 获取ftp服务器文件时间的方法
2019/07/02 Python
Tensorflow模型实现预测或识别单张图片
2019/07/19 Python
Tensorflow:转置函数 transpose的使用详解
2020/02/11 Python
python实现全排列代码(回溯、深度优先搜索)
2020/02/26 Python
一个不错的HTML5 Canvas多层点击事件监听实例
2014/04/29 HTML / CSS
大学毕业生自我鉴定
2013/11/05 职场文书
工作表现自我评价
2014/02/08 职场文书
小学生元旦广播稿
2014/02/21 职场文书
毕业实习指导教师评语
2014/12/31 职场文书
婚宴邀请函
2015/01/30 职场文书
JavaScript实现淘宝商品图切换效果
2021/04/29 Javascript
完美解决golang go get私有仓库的问题
2021/05/05 Golang