首页 > 解决方案 > 扫描整台电脑

问题描述

我是 python 新手。目前我正在尝试自动检测计算机中有多少硬盘并在不提供路径的情况下扫描整个磁盘。有人知道怎么做或有什么建议吗?以下是我的编码:-

import hashlib
import os.path
import os
import stat
def md5(fname):
    hash_md5 = hashlib.md5()
    try:
        with open(fname, "rb") as f:
            for chunk in iter(lambda: f.read(2 ** 20), b""):
                hash_md5.update(chunk)
    except Exception:
        pass
    return hash_md5.hexdigest()


viruslist = open('C:/FYP/SecuCOM2022/virusshare.md5.txt','rt')
virusinside = [l.rstrip() for l in viruslist]

def get_all_abs_paths(rootdir):
    paths = list()
    virus="detected"
    novirus="clear"
    for dirpath,_,filenames in os.walk(rootdir):
        for f in filenames:
            paths.append(os.path.abspath(os.path.join(dirpath, f)))
    for filename in paths:
        print(filename, md5(filename))
        if md5(filename) in virusinside:
            print(virus)
            os.remove(filename)
        else:
            print(novirus)

filenames = get_all_abs_paths('C:/')

标签: pythonhashdirectorymd5drive

解决方案


推荐阅读