对于大的文件,比如大型游戏,下载一般会带有md5值在下载包里面,md5是一种加密手段,在这里可以用来验证完整性,因为在下载大型文件的时候某个部分可能网络传输会出现错误,一个小文件坏了可能会导致游戏玩到中间出意外的bug或者干脆打不开游戏,重新下载要花费很多时间,所以还是值得下好先验证一下的。直接上代码
import hashlib
import os
f_path = input('File path: ')
SETUP_FILE = [file for file in os.listdir(f_path) if os.path.splitext(file)[1] == '.bin' or
(os.path.splitext(file)[1] == '.exe' and '%' not in os.path.splitext(file)[0])]
MD5_FILE = [file for file in os.listdir(f_path) if os.path.splitext(file)[1] == '.md5']
print('所有安装文件:', SETUP_FILE)
print('MD5储存文件:', MD5_FILE)
def get_correct_md5():
all_md5 = []
for file in MD5_FILE:
with open(os.path.join(f_path, file)) as f:
data = f.readlines()
all_md5.extend(data)
return all_md5
def get_file_md5(file):
full_file_path = os.path.join(f_