- 磁盘清理工具(python)
- 一、python代码
- 二、打包exe
一、python代码
# 删除文件夹下面的所有文件
import os
import shutil
import stat
from time import sleep
# Temp-临时文件
path_data1 = "C:\Windows\Temp"
# Prefetch-访问记录
path_data2 = "C:\Windows\Prefetch"
# Download-系统更新时下载的补丁和一些安装包等
path_data3 = "C:\Windows\SoftwareDistribution\Download"
# LogFiles-系统日志及操作记录
path_data4 = "C:\Windows\System32\LogFiles"
path_data_diy = ""
def del_file(path_data):
sleep(1)
if len(os.listdir(path_data)) == 0:
print(" 无垃圾可清理")
return
for i in os.listdir(path_data): # os.listdir(path_data)#返回一个列表,里面是当前目录下面的所有东西的相对路径
# file_data = path_data + "\" + i # 当前文件夹的下面的所有东西的绝对路径
path = os.path.join(path_data, i)
if os.path.isdir(path):
try:
# 使用shutil模块
shutil.rmtree(path)
except Exception as error:
os.system('rd /s /q %s' % path)
print(' 已清除文件夹 ' + path)
elif os.path.isfile(path):
try:
# 使用os模块删除
os.remove(path)
except Exception as error:
# 使用windows命令行强制删除
# os.system('del' + path + '/S')
os.system("del /f /q %s" % path)
print(' 已清除文件 ' + path)
def routineCleanup():
try:
print(" 正在清理Temp-临时文件的垃圾……")
# 利用以下语言获得文件夹的写入权限
os.chmod(path_data1, stat.S_IRWXU)
del_file(path_data1)
except Exception as e:
print(" "+str(e))
pass
try:
print(" 正在清理Prefetch-访问记录的垃圾……")
os.chmod(path_data2, stat.S_IRWXU)
del_file(path_data2)
except Exception as e:
print(" "+str(e))
pass
try:
print(" 正在清理Download-系统更新时下载的补丁和一些安装包等的垃圾……")
os.chmod(path_data3, stat.S_IRWXU)
del_file(path_data3)
except Exception as e:
print(" "+str(e))
pass
try:
print(" 正在清理LogFiles-系统日志及操作记录的垃圾……")
os.chmod(path_data4, stat.S_IRWXU)
del_file(path_data4)
except Exception as e:
print(" "+str(e))
def main():
while True:
print("n欢迎使用DDPL磁盘清理工具 n1.c盘常规清理 n2.清理目标文件夹下所有文件")
number = input("请输入任务序号(0退出):")
if number == '1':
routineCleanup()
elif number == '2':
while True:
path_data_diy = input("请输入想要清空的文件夹的地址(0返回上一级):")
if path_data_diy == "0":
break
elif not os.path.exists(path_data_diy):
print("输入有误")
continue
else:
print(" 正在清理" + path_data_diy + "的垃圾……")
del_file(path_data_diy)
elif number == "0":
break
elif number not in ['1', '2', '0']:
print("抱歉输入错误,请重新输入!")
continue
if __name__ == "__main__":
main()
注意:因为c盘权限问题,直接运行py文件会报错。
在命令行窗口中先进入py文件的目录,之后输入pyinstaller XXXX.py 在生成的dist文件夹中找到exe文件,以管理员身份运行文件。
链打包好的exe文件: 磁盘清理工具.



