Python实现检测文件MD5值的方法示例


Posted in Python onApril 11, 2018

本文实例讲述了Python实现检测文件MD5值的方法。分享给大家供大家参考,具体如下:

前面介绍过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")
Python 相关文章推荐
Python中itertools模块用法详解
Sep 25 Python
python通过smpt发送邮件的方法
Apr 30 Python
快速了解python leveldb
Jan 18 Python
Python实现JSON反序列化类对象的示例
Jan 31 Python
python3.X 抓取火车票信息【修正版】
Jun 19 Python
基于python实现名片管理系统
Nov 30 Python
python广度优先搜索得到两点间最短路径
Jan 17 Python
在Python中构建增广矩阵的实现方法
Jul 01 Python
python图片二值化提高识别率代码实例
Aug 24 Python
Python对接 xray 和微信实现自动告警
Sep 17 Python
python给视频添加背景音乐并改变音量的具体方法
Jul 19 Python
Python爬虫之Selenium多窗口切换的实现
Dec 04 Python
python 输出上个月的月末日期实例
Apr 11 #Python
Python简单计算文件MD5值的方法示例
Apr 11 #Python
pandas 获取季度,月度,年度首尾日期的方法
Apr 11 #Python
python+pandas生成指定日期和重采样的方法
Apr 11 #Python
python dataframe astype 字段类型转换方法
Apr 11 #Python
pandas series序列转化为星期几的实例
Apr 11 #Python
pandas的object对象转时间对象的方法
Apr 11 #Python
You might like
apache+mysql+php+ssl服务器之完全安装攻略
2006/09/05 PHP
php打造属于自己的MVC框架
2012/03/07 PHP
[原创]php逐行读取txt文件写入数组的方法
2015/07/02 PHP
PHP生成随机字符串(3种方法)
2015/09/25 PHP
PHP实现原生态图片上传封装类方法
2016/11/08 PHP
jquery ajax同步异步的执行最终解决方案
2013/04/26 Javascript
JavaScript实现维吉尼亚(Vigenere)密码算法实例
2013/11/22 Javascript
javascript中的undefined和not defined区别示例介绍
2014/02/26 Javascript
js对象的复制继承实例
2015/01/10 Javascript
javascript实时显示北京时间的方法
2015/03/12 Javascript
jQuery+css实现的tab切换标签(兼容各浏览器)
2016/01/28 Javascript
input file上传 图片预览功能实例代码
2016/10/25 Javascript
动态加载css方法实现和深入解析
2017/01/18 Javascript
js模拟微博发布消息
2017/02/23 Javascript
AngularJS学习笔记之表单验证功能实例详解
2017/07/06 Javascript
使用D3.js创建物流地图的示例代码
2018/01/27 Javascript
Python语言编写电脑时间自动同步小工具
2013/03/08 Python
用Python编写生成树状结构的文件目录的脚本的教程
2015/05/04 Python
Python3 伪装浏览器的方法示例
2017/11/23 Python
Pytorch入门之mnist分类实例
2018/04/14 Python
python中dict()的高级用法实现
2019/11/13 Python
Python Numpy 自然数填充数组的实现
2019/11/28 Python
python安装sklearn模块的方法详解
2020/11/28 Python
UGG美国官网:购买UGG雪地靴、拖鞋和鞋子
2017/12/31 全球购物
印度购买眼镜和太阳镜网站:Coolwinks
2018/09/26 全球购物
ColourPop美国官网:卡拉泡泡,洛杉矶彩妆品牌
2019/04/28 全球购物
惠而浦美国官网:Whirlpool.com
2021/01/19 全球购物
会计电算化个人自我评价
2013/11/17 职场文书
《珍珠泉》教学反思
2014/02/20 职场文书
理工大学毕业生自荐信范文
2014/02/22 职场文书
餐厅筹备计划书
2014/04/25 职场文书
运动会演讲稿100字
2014/08/25 职场文书
学习群众路线的心得体会
2014/11/05 职场文书
研究生学习计划书应该怎么写?
2019/09/10 职场文书
关于MySQL中的 like操作符详情
2021/11/17 MySQL
Python中with上下文管理协议的作用及用法
2022/03/18 Python