這篇文章給大家介紹使用Python怎么編寫一個自動清理系統垃圾功能,內容非常詳細,感興趣的小伙伴們可以參考借鑒,希望對大家能有所幫助。
一、清理目標
系統盤 %system% 下文件類型:
【臨時文件(*.tmp)】 【臨時文件(*._mp)】 【日志文件(*.log)】 【臨時幫助文件(*.gid)】 【磁盤檢查文件(*.chk)】 【臨時備份文件(*.old)】 【Excel備份文件(*.xlk)】 【臨時備份文件(*.bak)】
用戶目錄 %userprofile% 下文件夾
【COOKIE】 cookies\*.* 【文件使用記錄】 recent\*.* 【IE臨時文件】 Temporary Internet Files\*.* 【臨時文件文件夾】 Temp\*.*.
Windows 目錄 %windir% 下文件夾
【預讀取數據文件夾】 prefetch\*.* 【臨時文件】 temp\*.*
Python os 模塊提供了非常豐富的方法用來處理文件和目錄,它會自適應于不同的操作系統平臺,根據不同的平臺進行相應的操作,在python編程時,經常和文件、目錄打交道,這時就離不了os模塊。
具體就不過多介紹,大家可以看一下官方文檔,也沒必要細究,用到哪個知道怎么查就行了。
https://docs.python.org/zh-cn/3/library/os.html
造輪子不如站在巨人的肩膀上,發現已經有博主寫過了,不過是用Python2編寫的,print的地方改一下就行了。

import os
del_extension = {
'.tmp': '臨時文件',
'._mp': '臨時文件_mp',
'.log': '日志文件',
'.gid': '臨時幫助文件',
'.chk': '磁盤檢查文件',
'.old': '臨時備份文件',
'.xlk': 'Excel備份文件',
'.bak': '臨時備份文件bak'
}
del_userprofile = ['cookies', 'recent', 'Temporary Internet Files', 'Temp']
del_windir = ['prefetch', 'temp']
SYS_DRIVE = os.environ['systemdrive'] + '\\'
USER_PROFILE = os.environ['userprofile']
WIN_DIR = os.environ['windir']
def del_dir_or_file(root):
try:
if os.path.isfile(root):
os.remove(root)
print ("file",root,"removed")
elif os.path.isdir(root):
os.rmdir(root)
print("dir",root,"removed")
except WindowsError:
print("failure",root,"can't remove")
def formatSize(b):
try:
kb = b // 1024
except:
print("傳入字節格式不對")
return "Error"
if kb > 1024:
M = kb // 1024
if M > 1024:
G = M // 1024
return "%dG" % G
else:
return "%dM" % M
else:
return "%dkb" % kb
class DiskClean(object):
def __init__(self):
self.del_info = {}
self.del_file_paths = []
self.total_size = 0
for i,j in del_extension.items():
self.del_info[i] = dict(name = j,count = 0 )
def scanf(self):
for roots,dirs,files in os.walk(USER_PROFILE):
for files_item in files:
file_extension = os.path.splitext(files_item)[1]
if file_extension in self.del_info:
file_full_path = os.path.join(roots,files_item)
self.del_file_paths.append(file_full_path)
self.del_info[file_extension]['count'] += 1
self.total_size += os.path.getsize(file_full_path)
def show(self):
re = formatSize(self.total_size)
for i in self.del_info:
print(self.del_info[i]["name"],"共計",self.del_info[i]["count"],"個")
return re
def delete_files(self):
for i in self.del_file_paths:
print(i)
del_dir_or_file(i)
if __name__ == "__main__":
print("初始化清理垃圾程序")
cleaner = DiskClean()
print("開始掃描垃圾文件請耐心等待\n")
cleaner.scanf()
print("掃描成功,結果如下")
re = cleaner.show()
cleaner.delete_files()調通之后另存為kill360.py,保存到python的工作目錄,不知道工作目錄可以運行os.getcwd()查看。
另外還需要確保python的安裝目錄已添加到path系統變量中,方法:在電腦中,右鍵打開 我的電腦(此電腦)\屬性\高級系統設置\環境變量

cmd打開命令行輸入 python 命令,如下圖即成功:

然后新建一個kill360.bat文件,輸入一下內容:
python clean.py
將其和.py文件一起放到工作目錄下

然后打開任務計劃程序

創建任務及配置過程



關于使用Python怎么編寫一個自動清理系統垃圾功能就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。