利用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中MySQLdb模块用法实例
Nov 10 Python
python返回昨天日期的方法
May 13 Python
python2.7实现邮件发送功能
Dec 12 Python
对python当中不在本路径的py文件的引用详解
Dec 15 Python
用python做游戏的细节详解
Jun 25 Python
浅谈Python中函数的定义及其调用方法
Jul 19 Python
python 表格打印代码实例解析
Oct 12 Python
Python获取统计自己的qq群成员信息的方法
Nov 15 Python
Pytorch之contiguous的用法
Dec 31 Python
python中reload重载实例用法
Dec 15 Python
彻底解决pip下载pytorch慢的问题方法
Mar 01 Python
如何判断pytorch是否支持GPU加速
Jun 01 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读取IMAP邮件
2006/10/09 PHP
phpQuery占用内存过多的处理方法
2013/11/13 PHP
php利用腾讯ip分享计划获取地理位置示例分享
2014/01/20 PHP
PHP如何将log信息写入服务器中的log文件
2015/07/29 PHP
PHP文件操作实例总结
2016/09/27 PHP
使用XHProf查找PHP性能瓶颈的实例
2017/12/13 PHP
JScript中的"this"关键字使用方式补充材料
2007/03/08 Javascript
JavaScript 常见对象类创建代码与优缺点分析
2009/12/07 Javascript
apycom出品的jQuery精美菜单破解方法
2011/02/18 Javascript
Ext中下拉列表ComboBox组件store数据格式用法介绍
2013/07/15 Javascript
如何调试异步加载页面里包含的js文件
2014/10/30 Javascript
解决jQuery使用JSONP时产生的错误
2015/12/02 Javascript
JavaScript基本语法学习教程
2016/01/14 Javascript
ES6使用let命令更简单的实现块级作用域实例分析
2017/03/31 Javascript
微信小程序 动态绑定事件并实现事件修改样式
2017/04/13 Javascript
Javarscript中模块(module)、加载(load)与捆绑(bundle)详解
2017/05/28 Javascript
详解React native全局变量的使用(跨组件的通信)
2017/09/07 Javascript
Angular2 自定义表单验证器的实现方法
2018/12/14 Javascript
Nodejs 微信小程序消息推送的实现
2021/01/20 NodeJs
[02:08:58]2014 DOTA2国际邀请赛中国区预选赛 Ne VS CIS
2014/05/22 DOTA
python监控网站运行异常并发送邮件的方法
2015/03/13 Python
使用Python操作MySQL的一些基本方法
2015/08/16 Python
python使用标准库根据进程名如何获取进程的pid详解
2017/10/31 Python
在Pycharm中自动添加时间日期作者等信息的方法
2019/01/16 Python
纯python进行矩阵的相乘运算的方法示例
2019/07/17 Python
用python写测试数据文件过程解析
2019/09/25 Python
Python使用type动态创建类操作示例
2020/02/29 Python
详解如何使用Pytest进行自动化测试
2021/01/14 Python
六一儿童节活动策划方案
2014/01/27 职场文书
老干部工作先进事迹
2014/08/17 职场文书
整改报告格式
2014/11/06 职场文书
人事局接收函
2015/01/30 职场文书
公司文体活动总结
2015/05/07 职场文书
决心书格式范文
2015/09/23 职场文书
2019奶茶店创业计划书范本!
2019/07/15 职场文书
SQL Server表分区删除详情
2021/10/16 SQL Server