功能描述
获取文件夹内所有文件的MD5值,并将文件全路径及MD5的值输出至csv文件中。
用到的库
hashlib :MD5
os :文件路径
csv: 输出至csv文件
1.获取文件夹内相关文件的全路径 存储为数组
2.进入列表循环,对每个文件进行MD5计算,将计算结果值存储到数组
3.输出至csv文件
#功能描述:获取文件夹内所有文件的MD5值,并将文件全路径及MD5的值输出至csv文件中。
###1.获取文件夹内相关文件的全路径 存储为数组
###2.进入列表循环,对每个文件进行MD5计算,将计算结果值存储到数组
###3.输出至csv文件
###
import hashlib
import os
import csv
filePath = r"E:\文件夹"
allpath=[]
allname=[]
allMD5=[]
data = []
allfilelist=os.listdir(filePath)
# 遍历该文件夹下的所有目录或者文件
for file in allfilelist:
filepath=os.path.join(filePath,file)
# 如果是文件夹,递归调用函数
if os.path.isfile(filepath):
allpath.append(filepath)
allname.append(file)
#print(filepath) 文件全路径
md5file = open(filepath, 'rb')
md5 = hashlib.md5(md5file.read()).hexdigest()
md5file.close()
allMD5.append(md5)
#print(md5) md5计算结果
data.append((filepath,md5))
# print(data)
#将结果输出为csv文件
csvfile = open('md5.csv', 'w',encoding='utf-8') #打开方式还可以使用file对象
writer = csv.writer(csvfile)
writer.writerow(["allpath", "allMD5"])
writer.writerows(data)
csvfile.close()
print("输出完毕")