python检测文件的MD值

Posted ccorz

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python检测文件的MD值相关的知识,希望对你有一定的参考价值。

使用hashlib模块,可对文件MD5一致性加密验证:

#python 检测文件MD5值
#python version 2.6
 
import hashlib
import os,sys
 
#简单的测试一个字符串的MD5值
def GetStrMd5(src):
    m0=hashlib.md5()
    m0.update(src)
    print m0.hexdigest()
    pass
 
#大文件的MD5值
def GetFileMd5(filename):
    if not os.path.isfile(filename):
        return
    myhash = hashlib.md5()
    f = file(filename,‘rb‘)
    while True:
        b = f.read(8096)
        if not b :
            break
        myhash.update(b)
    f.close()
    return myhash.hexdigest()
 
def CalcSha1(filepath):
    with open(filepath,‘rb‘) as f:
        sha1obj = hashlib.sha1()
        sha1obj.update(f.read())
        hash = sha1obj.hexdigest()
        print(hash)
        return hash
 
def CalcMD5(filepath):
    with open(filepath,‘rb‘) as f:
        md5obj = hashlib.md5()
        md5obj.update(f.read())
        hash = md5obj.hexdigest()
        print(hash)
        return hash        
 
if __name__ == "__main__":
    if len(sys.argv)==2 :
        hashfile = sys.argv[1]
        if not os.path.exists(hashfile):
            hashfile = os.path.join(os.path.dirname(__file__),hashfile)
            if not os.path.exists(hashfile):
                print("cannot found file")
            else
                CalcMD5(hashfile)
        else:
            CalcMD5(hashfile)
            #raw_input("pause")
    else:
        print("no filename")

  

以上是关于python检测文件的MD值的主要内容,如果未能解决你的问题,请参考以下文章

检测网站挂马程序(Python)

Python :check大文件或者文件夹中所有文件MD5值

MD5、SHA1、CRC32这三个用于检测文件是不是被修改过,哪个可靠性最高?

python如何判断一个文件内容发生变化

Python:运营自媒体,如何修改图片的MD5值

Python:运营自媒体,如何修改图片的MD5值