以下为代码
import os
import tkinter as tk # 导入tkinter模块
mw = tk.Tk()
mw.title('杀毒') # 设置窗口标题
lb3 = tk.Label(mw, text='请输入需要查杀的目录:', bg='white')
病毒库 = ['病毒.txt','Dll.dll','1SY.exe','Hack.Nether.Client','VBS.Happytime','Js.Fortnight.c.s','Macro.Melissa','Backdoor.IRCBot','Trojan.Win32.SendIP.15 ','Backdoor.RmtBomb.12 ','Dropper.BingHe2.2C','Harm.formatC.f','Harm.Command.Killer','Joke.Girlghost','Binder.killsys','Binder.QQPass.QQBin']
ent = tk.Entry(mw)
ent.grid(row=0, column=1)
def getAllFile(path):
# 获取目录中的所有文件并遍历
files = os.listdir (path)
for file in files:
# 拼接路径,如果是目录则递归获取所有文件
new_path = path + r'/' + file
if os.path.isdir(new_path):
getAllFile(new_path)
else:
# 如果是文件则查询病毒库,匹配成功则删除
if file in 病毒库:
os.remove(new_path)
print('已经删除病毒文件', file)
lb1 = tk.Label(mw, text='杀毒成功,已经删除病毒文件', bg='white')
lb2 = tk.Label(mw, text=file, bg='white')
lb1.grid(row=1, column=0)
lb2.grid(row=1, column=1)
lb3.grid(row=0, column=0)
'''path = input('请输入需要查杀的目录:')'''
g=ent.get()
getAllFile(g)#运行函数
tk.mainloop()#主循环
告诉我一声
修复上述问题后的代码如下:
import os
import tkinter as tk
mw = tk.Tk()
mw.title('杀毒')
lb3 = tk.Label(mw, text='请输入需要查杀的目录:', bg='white')
病毒库 = ['病毒.txt','Dll.dll','1SY.exe','Hack.Nether.Client','VBS.Happytime','Js.Fortnight.c.s','Macro.Melissa','Backdoor.IRCBot','Trojan.Win32.SendIP.15 ','Backdoor.RmtBomb.12 ','Dropper.BingHe2.2C','Harm.formatC.f','Harm.Command.Killer','Joke.Girlghost','Binder.killsys','Binder.QQPass.QQBin']
ent = tk.Entry(mw)
ent.grid(row=0, column=1)
def getAllFile(path):
files = os.listdir(path)
for file in files:
new_path = path + r'/' + file
if os.path.isdir(new_path):
getAllFile(new_path)
else:
if file in 病毒库:
os.remove(new_path)
print('已经删除病毒文件', file)
lb1 = tk.Label(mw, text='杀毒成功,已经删除病毒文件', bg='white')
lb2 = tk.Label(mw, text=file, bg='white')
lb1.grid(row=1, column=0)
lb2.grid(row=1, column=1)
lb3.grid(row=0, column=0)
def start_scan():
g = ent.get()
getAllFile(g)
scan_button = tk.Button(mw, text="开始扫描", command=start_scan)
scan_button.grid(row=2, column=0)
tk.mainloop()