利用python计算windows全盘文件md5值的脚本


Posted in Python onJuly 27, 2019
import hashlib
import os
import time
import configparser
import uuid
 
def test_file_md5(file_path):
  test = hashlib.md5()
 
  if os.path.isfile(file_path):
    with open(file_path, "rb") as f:
      while True:
        data = f.read(8096)
        if not data:
          break
        else:
          test.update(data)
      ret = test.hexdigest()
      config = configparser.ConfigParser()
 
      config.read("E:/python/pycharm/再开次开始/前端/test_md5.ini",encoding="utf-8")
      if config.has_section(os.path.basename(file_path)):
        new_section_name = str(os.path.basename(file_path)) + ":" + str(uuid.uuid4())
        config[new_section_name] = {"文件路径":os.path.dirname(file_path),
                 "md5值":ret}
      else:
        config[os.path.basename(file_path)] = {"文件路径": os.path.dirname(file_path),
                        "md5值": ret}
      config.write(open("E:/python/pycharm/再开次开始/前端/test_md5.ini","w",encoding="utf-8"))
 
 
 
def test_dir_md5(file_path):
  test_abs_path = os.path.abspath(file_path)
  # print(test_abs_path)
  os.chdir(test_abs_path)
  for file in os.listdir(os.getcwd()):
    if os.path.isfile(file):
      test_file_md5(os.path.abspath(file))
    elif os.path.isdir(file):
      test_dir_md5(os.path.abspath(file))
    else:
      pass
  # return True
 
 
if __name__ == '__main__':
  began_path = os.getcwd()
  test_path = os.path.dirname(os.path.dirname(os.path.dirname(os.path.dirname(began_path))))
  os.chdir(test_path)
  print(os.listdir())
  for test_file in os.listdir():
    os.chdir(test_path)
    if os.path.abspath(test_file).startswith("E:\\$"):
      continue
    else:
      if os.path.isfile(test_file):
        # print("yyyyy")
        test_file_md5(os.path.abspath(test_file))
      elif os.path.isdir(test_file):
        # print("hahah")
        test_dir_md5(os.path.abspath(test_file))
        # print(os.path.abspath(test_file))
      else:
        pass

结果如下

利用python计算windows全盘文件md5值的脚本

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
使用Python的Django框架结合jQuery实现AJAX购物车页面
Apr 11 Python
Python中的defaultdict与__missing__()使用介绍
Feb 03 Python
Python中的函数作用域
May 07 Python
详解用python自制微信机器人,定时发送天气预报
Mar 25 Python
python集合是否可变总结
Jun 20 Python
深度学习入门之Pytorch 数据增强的实现
Feb 26 Python
记一次pyinstaller打包pygame项目为exe的过程(带图片)
Mar 02 Python
python mysql中in参数化说明
Jun 05 Python
Python如何进行时间处理
Aug 06 Python
Python实现异步IO的示例
Nov 05 Python
Python Pycharm虚拟下百度飞浆PaddleX安装报错问题及处理方法(亲测100%有效)
May 24 Python
python3读取文件指定行的三种方法
May 24 Python
Djang的model创建的字段和参数详解
Jul 27 #Python
python中bs4.BeautifulSoup的基本用法
Jul 27 #Python
Django的Modelforms用法简介
Jul 27 #Python
在django admin中添加自定义视图的例子
Jul 26 #Python
深入了解Django中间件及其方法
Jul 26 #Python
如何在Django项目中引入静态文件
Jul 26 #Python
Python 画出来六维图
Jul 26 #Python
You might like
扩展你的 PHP 之入门篇
2006/12/04 PHP
php仿discuz分页效果代码
2008/10/02 PHP
PHP函数之error_reporting(E_ALL ^ E_NOTICE)详细说明
2011/07/01 PHP
PHP使用imagick读取PDF生成png缩略图的两种方法
2014/03/20 PHP
php设计模式之工厂模式用法经典实例分析
2019/09/20 PHP
javascript之ESC(第二类混淆)
2007/05/06 Javascript
Javascript数组的排序 sort()方法和reverse()方法
2012/06/04 Javascript
JS时间选择器 兼容IE6,7,8,9
2012/06/26 Javascript
jCallout 轻松实现气泡提示功能
2013/09/22 Javascript
SeaJS入门教程系列之使用SeaJS(二)
2014/03/03 Javascript
js动态移动滚动条至底部示例代码
2014/04/24 Javascript
JavaScript Array对象扩展indexOf()方法
2014/05/09 Javascript
js实现无缝滚动特效
2015/12/20 Javascript
动态加载js文件简单示例
2016/04/21 Javascript
jQuery中DOM节点删除之empty与remove
2017/01/20 Javascript
详解webpack+express多页站点开发
2017/12/22 Javascript
在vue项目中引入高德地图及其UI组件的方法
2018/09/04 Javascript
VUE2.0+ElementUI2.0表格el-table实现表头扩展el-tooltip
2018/11/30 Javascript
Vue组件Draggable实现拖拽功能
2018/12/01 Javascript
[04:02]2014DOTA2国际邀请赛 BBC每日综述中国战队将再度登顶
2014/07/21 DOTA
Python 流程控制实例代码
2009/09/25 Python
一个检测OpenSSL心脏出血漏洞的Python脚本分享
2014/04/10 Python
Python 字典dict使用介绍
2014/11/30 Python
Python中的作用域规则详解
2015/01/30 Python
Python随机数random模块使用指南
2016/09/09 Python
Python 在字符串中加入变量的实例讲解
2018/05/02 Python
python logging设置level失败的解决方法
2020/02/19 Python
使用python自动追踪你的快递(物流推送邮箱)
2020/03/17 Python
django queryset相加和筛选教程
2020/05/18 Python
物业管理员岗位职责范文
2013/11/25 职场文书
初中校园之声广播稿
2014/01/15 职场文书
请假条怎么写
2014/04/10 职场文书
医德医风个人工作总结2014
2014/11/14 职场文书
2015年小学体育工作总结
2015/05/22 职场文书
PyQt5 QThread倒计时功能的实现代码
2021/04/02 Python
详解PHP设计模式之依赖注入模式
2021/05/25 PHP