zoukankan      html  css  js  c++  java
  • python检测文件的MD5值

    python检测文件的MD5值
    MD5(单向散列算法)的全称是Message-Digest Algorithm 5(信息-摘要算法),经MD2、MD3和MD4发展而来。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")
  • 相关阅读:
    Centos7下搭建SVN
    Ubuntu设置telnet 远程登录(root权限)
    E: 无法打开锁文件 /var/lib/dpkg/lock-frontend
    使用ICMP搭建隧道(PingTunnel)
    Centos7安装Redis
    idea 激活方法
    Chrome 浏览器安装 ChroPath 插件
    jmeter引入外部jar包的方法
    maven安装
    eclipse集成 json editor plugin插件
  • 原文地址:https://www.cnblogs.com/mmix2009/p/3229679.html
Copyright © 2011-2022 走看看