利用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 urlopen()函数 示例分享
Jun 12 Python
Python 3.x读写csv文件中数字的方法示例
Aug 29 Python
Python实现连接postgresql数据库的方法分析
Dec 27 Python
Python生成任意范围任意精度的随机数方法
Apr 09 Python
解决DataFrame排序sort的问题
Jun 07 Python
python将pandas datarame保存为txt文件的实例
Feb 12 Python
详解python项目实战:模拟登陆CSDN
Apr 04 Python
使用 Python 快速实现 HTTP 和 FTP 服务器的方法
Jul 22 Python
Python Gitlab Api 使用方法
Aug 28 Python
Python reduce函数作用及实例解析
May 08 Python
Python3通过chmod修改目录或文件权限的方法示例
Jun 08 Python
python suds访问webservice服务实现
Jun 26 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生成文件
2007/01/15 PHP
Js+Dhtml:WEB程序员简易开发工具包(预先体验版)
2006/11/07 Javascript
jQuery 获取URL的GET参数值的小例子
2013/04/18 Javascript
js动态控制table的tr、td增加及删除的具体实现
2014/04/30 Javascript
jQuery基于当前元素进行下一步的遍历
2014/05/20 Javascript
jquery 插件实现瀑布流图片展示实例
2015/04/03 Javascript
JavaScript知识点整理
2015/12/09 Javascript
Bootstrap fileinput文件上传组件使用详解
2017/06/06 Javascript
Vue组件库发布到npm详解
2018/02/17 Javascript
vue slots 组件的组合/分发实例
2018/09/06 Javascript
Vue中JS动画与Velocity.js的结合使用
2019/02/13 Javascript
vue指令之表单控件绑定v-model v-model与v-bind结合使用
2019/04/17 Javascript
vue2 拖动排序 vuedraggable组件的实现
2019/08/08 Javascript
Angular8 Http拦截器简单使用教程
2019/08/20 Javascript
vue+element 实现商城主题开发的示例代码
2020/03/26 Javascript
vue 监听窗口变化对页面部分元素重新渲染操作
2020/07/28 Javascript
Vue项目中使用mock.js的完整步骤
2021/01/12 Vue.js
Python中转换角度为弧度的radians()方法
2015/05/18 Python
Python编码爬坑指南(必看)
2016/06/10 Python
python 接口_从协议到抽象基类详解
2017/08/24 Python
Python测试人员需要掌握的知识
2018/02/08 Python
微信小程序python用户认证的实现
2019/07/29 Python
PHP统计代码行数的小代码
2019/09/19 Python
Pytorch实现基于CharRNN的文本分类与生成示例
2020/01/08 Python
完美解决jupyter由于无法import新包的问题
2020/05/26 Python
python 代码运行时间获取方式详解
2020/09/18 Python
video下autoplay属性无效的解决方法(添加muted属性)
2020/05/19 HTML / CSS
如何获得EntityManager
2014/02/09 面试题
公司请假条范文
2014/04/11 职场文书
党的群众路线教育实践活动领导班子整改措施
2014/09/30 职场文书
人身意外保险授权委托书
2014/10/01 职场文书
群众路线教育实践活动学习笔记内容
2014/11/06 职场文书
2015年考研复习计划
2015/01/19 职场文书
美术教师个人总结
2015/02/06 职场文书
2015年学校办公室主任工作总结
2015/07/20 职场文书
CentOS7环境下MySQL8常用命令小结
2022/06/10 Servers