Zrobiłem kod w python, który sprawdza md5 w pliku i upewnia się, że md5 pasuje do oryginału. Oto co opracowali:Jak obliczyć sumę kontrolną md5 pliku w Pythonie?
#Defines filename
filename = "file.exe"
#Gets MD5 from file
def getmd5(filename):
return m.hexdigest()
md5 = dict()
for fname in filename:
md5[fname] = getmd5(fname)
#If statement for alerting the user whether the checksum passed or failed
if md5 == '>md5 will go here<':
print("MD5 Checksum passed. You may now close this window")
input ("press enter")
else:
print("MD5 Checksum failed. Incorrect MD5 in file 'filename'. Please download a new copy")
input("press enter")
exit
Ale ilekroć uruchomić kod, mam następujące:
Traceback (most recent call last):
File "C:\Users\Username\md5check.py", line 13, in <module>
md5[fname] = getmd5(fname)
File "C:\Users\Username\md5check.py, line 9, in getmd5
return m.hexdigest()
NameError: global name 'm' is not defined
Czy coś mi brakuje w moim kodu?
możliwe duplikat [Generowanie kontrolną MD5 pliku?] (Http://stackoverflow.com/questions/3431825/generating-a-md5-checksum-of-a-file) – pylover