电脑信息查看器,DOS 窗口 *** 作,全程都是DOS窗口,内置 *** 作 系统信息、CPU信息、显卡信息、磁盘信息、清理垃圾、上帝模式、wifi密码、任务管理器等几项常规 *** 作信息
点个赞留个关注吧!!
里面不仅可以查看电脑信息配置,也可以进行 *** 作、清理查看等
我用脑图整理了一下,看似简单,其实挺简单的,但是软件真的很好用
导入所需模块
import time import ctypes, sys import wmi import locale import os import re import string import subprocess import psutil import platform import datetime import winreg import getpass import win32gui import win32process from ctypes import *
此段代码用来改变颜色,输出色为红色,直接把printRed当作print使用即可,只改变颜色,没有别的 *** 作
def printRed(mess): STD_OUTPUT_HANDLE = -11 FOREGROUND_BLUE = 0x09 # blue. FOREGROUND_GREEN = 0x0a # green. FOREGROUND_RED = 0x0c # red. def set_cmd_text_color(color, handle=ctypes.windll.kernel32.GetStdHandle(STD_OUTPUT_HANDLE)): Bool = ctypes.windll.kernel32.SetConsoleTextAttribute(handle, color) return Bool # reset white def resetColor(): set_cmd_text_color(FOREGROUND_RED | FOREGROUND_GREEN | FOREGROUND_BLUE) # 红色装饰 def Red(mess): set_cmd_text_color(FOREGROUND_RED) sys.stdout.write(mess) resetColor() set_cmd_text_color(FOREGROUND_GREEN) Red(mess)
我们打开软件后会直接开始获取设备信息,为了能不卡顿,我们把需要获取数据等待时间放在了前面,获取后可直接调取函数,但有一个问题就是需要刷新才能显示最新数据,并不能实时显示,因为实时会消耗大量内存和CPU占用量,而且会卡顿。我这样的 *** 作也是解决了这样的问题
wmi_obj = wmi.WMI() print('t[﹢]获取计算机信息中......') Caption = wmi_obj.Win32_ComputerSystem() handle = winreg.OpenKey(winreg.HKEY_LOCAL_MACHINE, 'HARDWAREDEscriptIONSystemBIOS', 0, (winreg.KEY_WOW64_64KEY + winreg.KEY_READ)) location, _type = winreg.QueryValueEx(handle, "BIOSReleaseDate") print('t[–]获取完毕...n') print('t[﹢]获取OperatingSystem信息中...') MUILanguages = wmi_obj.Win32_OperatingSystem() print('t[–]获取完毕...n') print('t[﹢]获取处理器信息中...') strip = wmi_obj.Win32_Processor() print('t[–]获取完毕...n') print("t[﹢]获取物理内存信息中 仅获取C盘信息....") # 获取磁盘的内存信息 def content(): for disk in psutil.disk_partitions(): # 读写方式 光盘 or 有效磁盘类型 if 'cdrom' in disk.opts or disk.fstype == '': continue # 分裂并以元组的方式展示 disk_name_arr = disk.device.split(':') # 获取磁盘标签 disk_name = disk_name_arr[0] # 获取磁盘信息 disk_info = psutil.disk_usage(disk.device) # 磁盘剩余空间 free_disk_size = disk_info.free // 1024 // 1024 // 1024 # 磁盘总空间 free_cisk_size = disk_info.total // 1024 // 1024 // 1024 # 当前磁盘使用率和剩余空间G信息 info = "t[%s]盘使用率:%s%% 总空间:%iG 使用空间:%iG 剩余空间:%iGn" % ( disk_name, str(disk_info.percent), free_cisk_size, free_cisk_size - free_disk_size, free_disk_size) if int(disk_info.percent) > 90: # 判断内存是否超过90%,如果超过则颜色改为红色,反则正常运行 printRed(info+'n') else: print(info) USER = os.getlogin() # 获取用户名 DIR = ['C:/Windows/Temp', f'C:/Users/{USER}/Local Settings/temp', 'C:/Windows/Prefetch', f'C:/Users/{USER}/Recent', f'C:/Users/{USER}/AppData/Local/Temp', 'C:/Windows/SoftwareDistribution/Download', f'C:/Users/{USER}/AppData/Roaming/Microsoft/Windows/Recent/AutomaticDestinations'] def iterbrowse(path): for home, dirs, files in os.walk(path): for filename in files: yield os.path.join(home, filename) # 垃圾文件 Memory_data = 0 for _data in range(7): for fullname in iterbrowse(DIR[_data]): NAME = fullname.replace("\", "/") # 替换 if ('.' in os.path.basename(NAME)) == True: if os.path.isfile(NAME) == True: statinfo = os.stat(NAME) Memory_data += statinfo.st_size / 1024 / 1024 / 1024 # 清理垃圾 def clear(): for _data in range(6): for fullname in iterbrowse(DIR[_data]): NAME = fullname.replace("\", "/") # 替换 print('t[-] '+NAME) if os.path.isfile(NAME) == True: try: os.remove(NAME) except: pass # 获取磁盘标签 ,采用判断识别 disk_list = '' Warning_information = '' for Disk_label in string.ascii_uppercase: disk = Disk_label + ':' if os.path.isdir(disk): disk_list = disk_list + disk + ' ' if os.path.isfile(f'{disk}/autorun.inf') == True: Warning_information = Warning_information + f"提示:你的{disk}盘疑似有自运行文件【autorun.inf】!nt" Win32_PhysicalMemory = wmi_obj.Win32_PhysicalMemory() print('t[–]获取完毕...n') print("t[﹢]获取显卡信息中...") Win32_VideoController = wmi_obj.Win32_VideoController() print('t[–]获取完毕...n') print("t[﹢]获取主板信息中...") Win32_BIOS = wmi_obj.Win32_BIOS() print('t[–]获取完毕...n') print("t[﹢]获取网卡信息中...") Win32_NetworkAdapterConfiguration = wmi_obj.Win32_NetworkAdapterConfiguration() loc_lang = locale.getdefaultlocale() if loc_lang[0] == "zh_CN": re_pattern = ["所有用户配置文件 : (.*)r", "安全密钥 : 不存在", "关键内容 : (.*)r"] else: re_pattern = ["All User Profile : (.*)r", "Security key : Absent", "Key Content : (.*)r"] cmd_output = subprocess.run(["netsh", "wlan", "show", "profiles"], capture_output=True).stdout.decode('gbk') wifi_names = (re.findall(re_pattern[0], cmd_output)) wifi_profile = '' if len(wifi_names) != 0: for name in wifi_names: profile_info = subprocess.run(["netsh", "wlan", "show", "profiles", name], capture_output=True).stdout.decode('gbk') if re.search(re_pattern[1], profile_info): continue else: wifi_profile = wifi_profile+'t wifi名称:['+name+'] ' profile_info_pass = subprocess.run(["netsh", "wlan", "show", "profiles", name, "key=clear"], capture_output=True).stdout.decode('gbk') password = re.search(re_pattern[2], profile_info_pass) if not password: wifi_profile = None pass else: wifi_profile = wifi_profile+'wifi密码:['+password[1]+']nn' print('t[–]获取完毕...n') print("t[﹢]获取CPU信息中...") CPU_data = (str(psutil.cpu_percent(1))) + '%' print('t[–]获取完毕...n')
系统信息,直接调用上面已经获取好的数据,进行打印,为了将界面整理好看一点,不得不再打印前面添加t
# 系统信息 def system_information(): os.system("cls") color() print("t系统信息nt—————————————————————————————————————————————————") print('tttt [quit]返回主界面 [12]HELP帮助') print(f"nt{f'系统版本:{MUILanguages[0].Caption}':53s}安装日期:{datetime.datetime.strptime(MUILanguages[0].InstallDate[0:][:8], '%Y%m%d').strftime('%Y/%m/%d')}") print(f"nt{f'电脑品牌:{Caption[0].SystemFamily}':58s}系统类型:{MUILanguages[0].OSArchitecture}") print(f"nt{f'CPU 型号:{strip[0].Name.strip()}':60s}发布日期:{datetime.datetime.strptime(location, '%m/%d/%Y').strftime('%Y/%m/%d')}") print(f"nt{f'内存厂商:{Win32_PhysicalMemory[0].Manufacturer}':55s}windows版本:{platform.version()}") print(f"nt{f'内存型号:{Win32_PhysicalMemory[0].PartNumber}':55s}开机时间:{datetime.datetime.fromtimestamp(psutil.boot_time()).strftime('%Y-%m-%d %H:%M:%S')}") print(f"nt系统 SKU:{Caption[0].SystemSKUNumber}") print(f"nt{f'产 品 ID:{MUILanguages[0].SerialNumber}':57s}主板型号:{Win32_BIOS[0].SerialNumber}") print(f"nt{f'显卡名称:{Win32_VideoController[0].Description}':55s}网卡名称:{Win32_NetworkAdapterConfiguration[1].Description}") print("t—————————————————————————————————————————————————") # 帮助信息 def help(): os.system("cls") color() print("tHELP帮助nt—————————————————————————————————————————————————") print('tttttt[quit]返回主界面') print(f"nt使用注意事项:") print(f"t每次程序打开时会自动读取电脑最新的信息 t使用 [Q或q] 可以进行刷新,任何界面都可以使用,使用后会显示为主界面.") print(f"t此程序只能输入相对应的字符串,否则会报错n") print(f"t版权注意事项:") print(f"t程序由CSDN用户:小木_. 制作,如有转载请标记出处和创作者nt程序不得用于售卖,仅用于使用和学习") print(f"ntCSDN作者链接:") print(f"t作者:小木_.") print(f"thttps://jiangongfang.blog.csdn.net/n") # CPU信息 def CPU(): os.system("cls") color() print("tCPU信息nt—————————————————————————————————————————————————") print('tttt [quit]返回主界面 [12]HELP帮助') print(f"nt{f'CPU 型号:{strip[0].Name.strip()}':62s}CPU 数量:{strip[0].Level}") print(f"nt{f'制 造 商:{strip[0].Manufacturer}':61s}CPU 版本:{strip[0].Version}") print(f"nt{f'逻辑CPU数量:{psutil.cpu_count()}':60s}刷新频率:{strip[0].MaxClockSpeed}") print(f"nt{f'物理CPU数量:{psutil.cpu_count(logical=False)}':60s}使 用 率:{CPU_data}") print(f"nt{f'序 列 号:{strip[0].ProcessorId.strip()}':62s}") print("t—————————————————————————————————————————————————") # 显卡信息 def Graphics_card(): os.system("cls") color() print("t显卡信息nt—————————————————————————————————————————————————") print('tttt [quit]返回主界面 [12]HELP帮助') Temp_Data = 0 # 待会要用数值 while Temp_Data < 4: # 只要数值小于4则一直执行 if Temp_Data <= 4: # 数值小于等于4则执行 try: _data = Win32_VideoController[Temp_Data] # 仅用来检测,不为别的 print(f't---------[{Temp_Data + 1}]››') # 用来标记 print(f"nt{f'适 配 器:{Win32_VideoController[Temp_Data].Name}':62s}驱动版本:{Win32_VideoController[Temp_Data].DriverVersion}") print(f"nt{f'制 造 商:{Win32_VideoController[Temp_Data].AdapterCompatibility}':62s}安装日期:{datetime.datetime.strptime(Win32_VideoController[Temp_Data].DriverDate[0:][:8], '%Y%m%d').strftime('%Y/%m/%d')}") print(f"nt{f'设备 PCI:{Win32_VideoController[Temp_Data].PNPDeviceID}':60s}") print('n') except: pass Temp_Data += 1 # 执行一次加1,直到停止循环,是为了检测有多少个适配器 else: pass print("t—————————————————————————————————————————————————") # 清理垃圾 def Clean_up_garbage(): os.system("cls") color() print(f"t清理垃圾nt—————————————————————————————————————————————————") print('ttt [quit]返回主界面 [clear]清理垃圾 [12]HELP帮助n') print('nt当前垃圾文件有:%.3fG' % Memory_data) print('nt提示:nt垃圾清理只会清理毫无用处的垃圾,且不会影响用户操作.') print('t清理垃圾后会自动刷新') print('t清理垃圾不是强制清理,如果该垃圾文件被调用或正在使用中,则不会被删除.') print('t建议在才开机的时候进行清理,那样才能清理的更多.n') print("t—————————————————————————————————————————————————")
这个上帝模式其实很简单,就是新建一个文件夹重命名为【GodMode.{ED7BA470-8E54-465E-825C-99712043E01C}】即可变为上帝面板,我直接进行新建了,很简单的
# 上帝模式 def Repair_computer(): os.system("md C:GodMode.{ED7BA470-8E54-465E-825C-99712043E01C}") os.system("start C:GodMode.{ED7BA470-8E54-465E-825C-99712043E01C}") os.system("cls") color()
任务管理器,其实可以将这些写入来一个py文件,然后使用from导入即可,我之前搞了很多个py文件,后来又都结合到一个py文件内了,因为怕你们看蒙,所以就结合到一个里面了
任务管理器相当于打印当前所有进程,终止通过taskkill pid进行结束,隐藏窗口也是通过pid进行 *** 作,获取某pid下的子进程对于某人用得上
# 任务管理器 def Task_Manager(): print(f"t任务管理器nt—————————————————————————————————————————————————") print('tttttt[quit]返回主界面 n') print('ttt[1]获取所有进程 [2]强行结束指定进程n') print('ttt[3]显示和隐藏指定进程的窗口 [4]获取指定进程的所有线程n') print("nt—————————————————————————————————————————————————") def data(): option = input("nn[﹟~]q或Q为任务管理器清屏..n[﹟~]请输入要 *** 作信息的对应字符串:") if option == "1": getProcessList() data() elif option == "2": pid = input("n请输入想要终止进程的pid:") killProcess(pid) data() elif option == "3": pid = input("n请输入要 *** 作进程的pid:") status = input("n隐藏输入[0],显示输入[1]:") changeWindowState(pid, status) data() elif option == "4": pid = input("n请输入要查看子进程的pid:") getThreadOfProcess(pid) data() elif option == "quit": os.system("cls") color() label() elif option == "q": os.system("cls") color() Task_Manager() elif option == "Q": os.system("cls") color() Task_Manager() else: print("n[–]错误字符 请重新输入.") time.sleep(1) data() data()
判断语句 只要你输入对应的字符串则会运行对应的数值,输入错误则会报错并返回,if函数很好学,一看就会,一学就废哈
if data == 'Q': print("t[--]刷新中....nt") os.system("cls") else: if data == 'q': print("t[--]刷新中....nt") os.system("cls") else: if data == '1': system_information() core() else: if data == '2': CPU() core() else: if data == '3': Graphics_card() core() else: if data == '4': Disk_information() core() else: if data == '5': Clean_up_garbage() core() else: if data == '6': os.system("cls") Repair_computer() label() else: if data == '7': WIFI_password() core() else: if data == '8': os.system("cls") color() Task_Manager() core() else: if data == '9': about_us() core() else: if data == '10': help() core() else: if data == 'clear': os.system("cls") print('nnt[-]开始清理垃圾!!nt') time.sleep(2) clear() print('t[-]清理完成!!!n') print('t[-]正在返回主界面!!!') time.sleep(3) os.system("cls") color() else: if data == 'quit': os.system("cls") color() label() else: print("nt[–]错误字符 请重新输入.") time.sleep(0.5) os.system("cls") color() label()
让我们来运行一下,由于我已经打包过了,直接运行打包好的,打包代码
pip install pyinstaller # 安装pyinstaller
pyinstaller -F -i 1.ico J.py --noconsole # 打包J.py并将图标改为1.ico
-F 强行打包压缩为单个exe应用程序,不建议大项目使用
-i 将打包的软件图标进行更改,如果不用则会默认为python的图标
--noconsole 不显示DOS窗口,隐藏,不建议以DOS窗口为主程序的python使用# 打包 我使用的是这个打包
pyinstaller -i 1.ico J.py
完整代码:
import time import ctypes, sys import wmi import locale import os import re import string import subprocess import psutil import platform import datetime import winreg import getpass import win32gui import win32process from ctypes import * def main(): # 列出系统当前所有进程。 def getProcessList(): os.system("tasklist") # 结构体 class THREADENTRY32(Structure): _fields_ = [('dwSize', c_ulong), ('cntUsage', c_ulong), ('th32ThreadID', c_ulong), ('th32OwnerProcessID', c_ulong), ('tpbasePri', c_long), ('tpDeltaPri', c_long), ('dwFlags', c_ulong)] # 获取指定进程的所有线程 def getThreadOfProcess(pid): dll = windll.LoadLibrary("KERNEL32.DLL") snapshotHandle = dll.CreateToolhelp32Snapshot(0x00000004, pid) struct = THREADENTRY32() struct.dwSize = sizeof(THREADENTRY32) flag = dll.Thread32First(snapshotHandle, byref(struct)) while flag != 0: if (struct.th32OwnerProcessID == int(pid)): print("n[-]子线程id:" + str(struct.th32ThreadID)) flag = dll.Thread32Next(snapshotHandle, byref(struct)) dll.CloseHandle(snapshotHandle) # EnumWindows的回调函数 def callback(hwnd, windows): pidList = win32process.GetWindowThreadProcessId(hwnd) for pid in pidList: windows.setdefault(pid, []) windows[pid].append(hwnd) # 显示和隐藏指定进程的窗口 def changeWindowState(pid, status): windows = {} win32gui.EnumWindows(callback, windows) try: hwndList = windows[int(pid)] # 显示/隐藏窗口 for hwnd in hwndList: win32gui.ShowWindow(hwnd, int(status)) except: print("n[-]进程不存在...") # 强行结束指定进程 def killProcess(pid): cmd = 'taskkill /pid ' + pid + ' /f' try: os.system(cmd) except Exception as e: print(e) # 主标题 def color(): # DOS窗口颜色参数设置 def printRed(mess): STD_OUTPUT_HANDLE = -11 FOREGROUND_BLUE = 0x09 # blue. FOREGROUND_GREEN = 0x0a # green. FOREGROUND_RED = 0x0c # red. def set_cmd_text_color(color, handle=ctypes.windll.kernel32.GetStdHandle(STD_OUTPUT_HANDLE)): Bool = ctypes.windll.kernel32.SetConsoleTextAttribute(handle, color) return Bool # reset white def resetColor(): set_cmd_text_color(FOREGROUND_RED | FOREGROUND_GREEN | FOREGROUND_BLUE) # 红色装饰 def Red(mess): set_cmd_text_color(FOREGROUND_RED) sys.stdout.write(mess) resetColor() set_cmd_text_color(FOREGROUND_GREEN) Red(mess) printRed("tttt************************************************n") printRed("tttt********t电脑信息查看器tt********n") printRed("tttt************************************************n") color() def printRed(mess): STD_OUTPUT_HANDLE = -11 FOREGROUND_BLUE = 0x09 # blue. FOREGROUND_GREEN = 0x0a # green. FOREGROUND_RED = 0x0c # red. def set_cmd_text_color(color, handle=ctypes.windll.kernel32.GetStdHandle(STD_OUTPUT_HANDLE)): Bool = ctypes.windll.kernel32.SetConsoleTextAttribute(handle, color) return Bool # reset white def resetColor(): set_cmd_text_color(FOREGROUND_RED | FOREGROUND_GREEN | FOREGROUND_BLUE) # 红色装饰 def Red(mess): set_cmd_text_color(FOREGROUND_RED) sys.stdout.write(mess) resetColor() set_cmd_text_color(FOREGROUND_GREEN) Red(mess) wmi_obj = wmi.WMI() print('t[﹢]获取计算机信息中......') Caption = wmi_obj.Win32_ComputerSystem() handle = winreg.OpenKey(winreg.HKEY_LOCAL_MACHINE, 'HARDWAREDEscriptIONSystemBIOS', 0, (winreg.KEY_WOW64_64KEY + winreg.KEY_READ)) location, _type = winreg.QueryValueEx(handle, "BIOSReleaseDate") print('t[–]获取完毕...n') print('t[﹢]获取OperatingSystem信息中...') MUILanguages = wmi_obj.Win32_OperatingSystem() print('t[–]获取完毕...n') print('t[﹢]获取处理器信息中...') strip = wmi_obj.Win32_Processor() print('t[–]获取完毕...n') print("t[﹢]获取物理内存信息中 仅获取C盘信息....") # 获取磁盘的内存信息 def content(): for disk in psutil.disk_partitions(): # 读写方式 光盘 or 有效磁盘类型 if 'cdrom' in disk.opts or disk.fstype == '': continue # 分裂并以元组的方式展示 disk_name_arr = disk.device.split(':') # 获取磁盘标签 disk_name = disk_name_arr[0] # 获取磁盘信息 disk_info = psutil.disk_usage(disk.device) # 磁盘剩余空间 free_disk_size = disk_info.free // 1024 // 1024 // 1024 # 磁盘总空间 free_cisk_size = disk_info.total // 1024 // 1024 // 1024 # 当前磁盘使用率和剩余空间G信息 info = "t[%s]盘使用率:%s%% 总空间:%iG 使用空间:%iG 剩余空间:%iGn" % ( disk_name, str(disk_info.percent), free_cisk_size, free_cisk_size - free_disk_size, free_disk_size) if int(disk_info.percent) > 90: # 判断内存是否超过90%,如果超过则颜色改为红色,反则正常运行 printRed(info+'n') else: print(info) USER = os.getlogin() # 获取用户名 DIR = ['C:/Windows/Temp', f'C:/Users/{USER}/Local Settings/temp', 'C:/Windows/Prefetch', f'C:/Users/{USER}/Recent', f'C:/Users/{USER}/AppData/Local/Temp', 'C:/Windows/SoftwareDistribution/Download', f'C:/Users/{USER}/AppData/Roaming/Microsoft/Windows/Recent/AutomaticDestinations'] def iterbrowse(path): for home, dirs, files in os.walk(path): for filename in files: yield os.path.join(home, filename) # 垃圾文件 Memory_data = 0 for _data in range(7): for fullname in iterbrowse(DIR[_data]): NAME = fullname.replace("\", "/") # 替换 if ('.' in os.path.basename(NAME)) == True: if os.path.isfile(NAME) == True: statinfo = os.stat(NAME) Memory_data += statinfo.st_size / 1024 / 1024 / 1024 # 清理垃圾 def clear(): for _data in range(6): for fullname in iterbrowse(DIR[_data]): NAME = fullname.replace("\", "/") # 替换 print('t[-] '+NAME) if os.path.isfile(NAME) == True: try: os.remove(NAME) except: pass # 获取磁盘标签 ,采用判断识别 disk_list = '' Warning_information = '' for Disk_label in string.ascii_uppercase: disk = Disk_label + ':' if os.path.isdir(disk): disk_list = disk_list + disk + ' ' if os.path.isfile(f'{disk}/autorun.inf') == True: Warning_information = Warning_information + f"提示:你的{disk}盘疑似有自运行文件【autorun.inf】!nt" Win32_PhysicalMemory = wmi_obj.Win32_PhysicalMemory() print('t[–]获取完毕...n') print("t[﹢]获取显卡信息中...") Win32_VideoController = wmi_obj.Win32_VideoController() print('t[–]获取完毕...n') print("t[﹢]获取主板信息中...") Win32_BIOS = wmi_obj.Win32_BIOS() print('t[–]获取完毕...n') print("t[﹢]获取网卡信息中...") Win32_NetworkAdapterConfiguration = wmi_obj.Win32_NetworkAdapterConfiguration() loc_lang = locale.getdefaultlocale() if loc_lang[0] == "zh_CN": re_pattern = ["所有用户配置文件 : (.*)r", "安全密钥 : 不存在", "关键内容 : (.*)r"] else: re_pattern = ["All User Profile : (.*)r", "Security key : Absent", "Key Content : (.*)r"] cmd_output = subprocess.run(["netsh", "wlan", "show", "profiles"], capture_output=True).stdout.decode('gbk') wifi_names = (re.findall(re_pattern[0], cmd_output)) wifi_profile = '' if len(wifi_names) != 0: for name in wifi_names: profile_info = subprocess.run(["netsh", "wlan", "show", "profiles", name], capture_output=True).stdout.decode('gbk') if re.search(re_pattern[1], profile_info): continue else: wifi_profile = wifi_profile+'t wifi名称:['+name+'] ' profile_info_pass = subprocess.run(["netsh", "wlan", "show", "profiles", name, "key=clear"], capture_output=True).stdout.decode('gbk') password = re.search(re_pattern[2], profile_info_pass) if not password: wifi_profile = None pass else: wifi_profile = wifi_profile+'wifi密码:['+password[1]+']nn' print('t[–]获取完毕...n') print("t[﹢]获取CPU信息中...") CPU_data = (str(psutil.cpu_percent(1))) + '%' print('t[–]获取完毕...n') time.sleep(0.5) os.system("cls") color() # 主界面 def label(): print(f"nt电脑用户:{Caption[0].Caption} 使用者:{Caption[0].UserName} 制造商:{Caption[0].Manufacturer} 电脑系统:{platform.system()} 语言版本:{list(MUILanguages[0].MUILanguages)[0]}") print(f"t—————————————————————————————————————————————————") print("ttt[1]系统信息 [2]CPU信息 [3]显卡信息 [4]磁盘信息") print("nttt[5]清理垃圾 [6]上帝模式 [7]wifi密码 [8]任务管理器") print("nttt[9]关于我们 [10]HELP帮助") # 用于输出信息 def core(): data = input('nnt[﹟~]Q或q为主界面的刷新值.nnt[﹟~]请输入要 *** 作信息的对应字符串:') # 系统信息 def system_information(): os.system("cls") color() print("t系统信息nt—————————————————————————————————————————————————") print('tttt [quit]返回主界面 [12]HELP帮助') print(f"nt{f'系统版本:{MUILanguages[0].Caption}':53s}安装日期:{datetime.datetime.strptime(MUILanguages[0].InstallDate[0:][:8], '%Y%m%d').strftime('%Y/%m/%d')}") print(f"nt{f'电脑品牌:{Caption[0].SystemFamily}':58s}系统类型:{MUILanguages[0].OSArchitecture}") print(f"nt{f'CPU 型号:{strip[0].Name.strip()}':60s}发布日期:{datetime.datetime.strptime(location, '%m/%d/%Y').strftime('%Y/%m/%d')}") print(f"nt{f'内存厂商:{Win32_PhysicalMemory[0].Manufacturer}':55s}windows版本:{platform.version()}") print(f"nt{f'内存型号:{Win32_PhysicalMemory[0].PartNumber}':55s}开机时间:{datetime.datetime.fromtimestamp(psutil.boot_time()).strftime('%Y-%m-%d %H:%M:%S')}") print(f"nt系统 SKU:{Caption[0].SystemSKUNumber}") print(f"nt{f'产 品 ID:{MUILanguages[0].SerialNumber}':57s}主板型号:{Win32_BIOS[0].SerialNumber}") print(f"nt{f'显卡名称:{Win32_VideoController[0].Description}':55s}网卡名称:{Win32_NetworkAdapterConfiguration[1].Description}") print("t—————————————————————————————————————————————————") # 帮助信息 def help(): os.system("cls") color() print("tHELP帮助nt—————————————————————————————————————————————————") print('tttttt[quit]返回主界面') print(f"nt使用注意事项:") print(f"t每次程序打开时会自动读取电脑最新的信息 t使用 [Q或q] 可以进行刷新,任何界面都可以使用,使用后会显示为主界面.") print(f"t此程序只能输入相对应的字符串,否则会报错n") print(f"t版权注意事项:") print(f"t程序由CSDN用户:小木_. 制作,如有转载请标记出处和创作者nt程序不得用于售卖,仅用于使用和学习") print(f"ntCSDN作者链接:") print(f"t作者:小木_.") print(f"thttps://jiangongfang.blog.csdn.net/n") # CPU信息 def CPU(): os.system("cls") color() print("tCPU信息nt—————————————————————————————————————————————————") print('tttt [quit]返回主界面 [12]HELP帮助') print(f"nt{f'CPU 型号:{strip[0].Name.strip()}':62s}CPU 数量:{strip[0].Level}") print(f"nt{f'制 造 商:{strip[0].Manufacturer}':61s}CPU 版本:{strip[0].Version}") print(f"nt{f'逻辑CPU数量:{psutil.cpu_count()}':60s}刷新频率:{strip[0].MaxClockSpeed}") print(f"nt{f'物理CPU数量:{psutil.cpu_count(logical=False)}':60s}使 用 率:{CPU_data}") print(f"nt{f'序 列 号:{strip[0].ProcessorId.strip()}':62s}") print("t—————————————————————————————————————————————————") # 显卡信息 def Graphics_card(): os.system("cls") color() print("t显卡信息nt—————————————————————————————————————————————————") print('tttt [quit]返回主界面 [12]HELP帮助') Temp_Data = 0 # 待会要用数值 while Temp_Data < 4: # 只要数值小于4则一直执行 if Temp_Data <= 4: # 数值小于等于4则执行 try: _data = Win32_VideoController[Temp_Data] # 仅用来检测,不为别的 print(f't---------[{Temp_Data + 1}]››') # 用来标记 print(f"nt{f'适 配 器:{Win32_VideoController[Temp_Data].Name}':62s}驱动版本:{Win32_VideoController[Temp_Data].DriverVersion}") print(f"nt{f'制 造 商:{Win32_VideoController[Temp_Data].AdapterCompatibility}':62s}安装日期:{datetime.datetime.strptime(Win32_VideoController[Temp_Data].DriverDate[0:][:8], '%Y%m%d').strftime('%Y/%m/%d')}") print(f"nt{f'设备 PCI:{Win32_VideoController[Temp_Data].PNPDeviceID}':60s}") print('n') except: pass Temp_Data += 1 # 执行一次加1,直到停止循环,是为了检测有多少个适配器 else: pass print("t—————————————————————————————————————————————————") # 磁盘信息 def Disk_information(): os.system("cls") color() print(f"t磁盘信息:{disk_list}nt—————————————————————————————————————————————————") print('tttt [quit]返回主界面 [12]HELP帮助n') content() print('t'+Warning_information) print("t—————————————————————————————————————————————————") # 清理垃圾 def Clean_up_garbage(): os.system("cls") color() print(f"t清理垃圾nt—————————————————————————————————————————————————") print('ttt [quit]返回主界面 [clear]清理垃圾 [12]HELP帮助n') print('nt当前垃圾文件有:%.3fG' % Memory_data) print('nt提示:nt垃圾清理只会清理毫无用处的垃圾,且不会影响用户操作.') print('t清理垃圾后会自动刷新') print('t清理垃圾不是强制清理,如果该垃圾文件被调用或正在使用中,则不会被删除.') print('t建议在才开机的时候进行清理,那样才能清理的更多.n') print("t—————————————————————————————————————————————————") # 上帝模式 def Repair_computer(): os.system("md C:GodMode.{ED7BA470-8E54-465E-825C-99712043E01C}") os.system("start C:GodMode.{ED7BA470-8E54-465E-825C-99712043E01C}") os.system("cls") color() # WIFI密码 def WIFI_password(): os.system("cls") color() print(f"tWIFI密码nt—————————————————————————————————————————————————") print('tttt [quit]返回主界面 [12]HELP帮助n') print('n'+wifi_profile) print('nnt提示:ntWIFI密码仅能查看已连接过的wifi密码,不能进行破解密码.') print('t如果需要破解wifi密码,请关注一下博主,nt链接:https://jiangongfang.blog.csdn.net/article/details/121877016?spm=1001.2014.3001.5502') print("nt—————————————————————————————————————————————————") # 任务管理器 def Task_Manager(): print(f"t任务管理器nt—————————————————————————————————————————————————") print('tttttt[quit]返回主界面 n') print('ttt[1]获取所有进程 [2]强行结束指定进程n') print('ttt[3]显示和隐藏指定进程的窗口 [4]获取指定进程的所有线程n') print("nt—————————————————————————————————————————————————") def data(): option = input("nn[﹟~]q或Q为任务管理器清屏..n[﹟~]请输入要操作信息的对应字符串:") if option == "1": getProcessList() data() elif option == "2": pid = input("n请输入想要终止进程的pid:") killProcess(pid) data() elif option == "3": pid = input("n请输入要操作进程的pid:") status = input("n隐藏输入[0],显示输入[1]:") changeWindowState(pid, status) data() elif option == "4": pid = input("n请输入要查看子进程的pid:") getThreadOfProcess(pid) data() elif option == "quit": os.system("cls") color() label() elif option == "q": os.system("cls") color() Task_Manager() elif option == "Q": os.system("cls") color() Task_Manager() else: print("n[–]错误字符 请重新输入.") time.sleep(1) data() data() # 关于我们 def about_us(): os.system("cls") color() print(f"t关于我们 CSDN博客nt—————————————————————————————————————————————————") print('tttt [quit]返回主界面 [12]HELP帮助n') print(''' t +---------------------------+---------------------------+ t | about THE SWORD WORKSHOP CSDN | t +---------------------------+---------------------------+ t | __________________ | | t | ==c(______(o(______(_() | |""""""""""""|======[*** | t | )= | | EXPLOIT | t | // | |____________________ | t | // | |==[msf >]============ | t | // | |______________________ | t | // RECON | (@)(@)(@)(@)(@)(@)(@)/ | t | // | ********************* | t +---------------------------+---------------------------+ t | o O o | `///`/ | t | o O | )======( | t | o | .' LOOT '. | t | |^^^^^^^^^^^^^^|l___ | / _||__ | t | | PAYLOAD |""___, | / (_||_ | t | |________________|__|)__| | | __||_) | | t | |(@)(@)"""**|(@)(@)**|(@) | " || " | t | = = = = = = = = = = = = | '--------------' | t +---------------------------+---------------------------+ ''') print("t 作者:小木_.ttt 博客链接:https://jiangongfang.blog.csdn.net/") print("t—————————————————————————————————————————————————") # 判断 if data == 'Q': print("t[--]刷新中....nt") os.system("cls") else: if data == 'q': print("t[--]刷新中....nt") os.system("cls") else: if data == '1': system_information() core() else: if data == '2': CPU() core() else: if data == '3': Graphics_card() core() else: if data == '4': Disk_information() core() else: if data == '5': Clean_up_garbage() core() else: if data == '6': os.system("cls") Repair_computer() label() else: if data == '7': WIFI_password() core() else: if data == '8': os.system("cls") color() Task_Manager() core() else: if data == '9': about_us() core() else: if data == '10': help() core() else: if data == 'clear': os.system("cls") print('nnt[-]开始清理垃圾!!nt') time.sleep(2) clear() print('t[-]清理完成!!!n') print('t[-]正在返回主界面!!!') time.sleep(3) os.system("cls") color() else: if data == 'quit': os.system("cls") color() label() else: print("nt[–]错误字符 请重新输入.") time.sleep(0.5) os.system("cls") color() label() core() label() os.system("cls") main() if __name__ == '__main__': main()
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)