本工具用python编写.它会扫描电脑中所有>500KB的图片,之后压缩成一个ZIP文件.
可以把ZIP放到云盘,非常简单就备份好珍贵的图片.

import os,zipfile,random,time
#-------生成随机字符----------
def generate_random_str(randomlength=8):
        random_str=''
        base_str='ABCDEFGHIGKLMNOPQRSTUVWXYZabcdefghigklmnopqrstuvwxyz0123456789'
        length=len(base_str)-1
        for i in range(randomlength):
                random_str += base_str[random.randint(0, length)]
        return random_str
#-------生成zip文件----------
def zip_files(files):
        a=1
        random_str=generate_random_str()
        zip = zipfile.ZipFile(random_str+'.zip', 'w', zipfile.ZIP_DEFLATED )
        for file in files:
                reversal_s=file[::-1]
                filename=file[-reversal_s.index('\\'):]
                for i in range(50):
                        if len(filename)<50:
                                filename+=' '
                        else:
                                break
                print('%d/%d|%s'%(a,len(files),filename),end='\r')
                zip.write( file )
                a=a+1
        zip.close()
        print ('压缩完成!                                                   \n')
        return random_str+'.zip'
#-------获得全盘符-----------
def get_all_disk():
    disk_l=[]
    for i in range(56,91):
        vol=chr(i)+':'
        if os.path.isdir(vol):
            disk_l.append(vol+os.path.sep)
    return disk_l
#-------获得指定大小\类型的文件----------
def get_file_l(dir,file_type,size):
    file_l=[]
    for path,dirs,files in os.walk(dir):
        if files!=[]:
            for i in files:
                if i[-len(file_type):]==file_type and i[:2]!='~$' and i[:1]!='$' and os.path.getsize(path+os.path.sep+i)>size:
                    file_l.append(path+os.path.sep+i)
    return file_l
#--------主main----------
if __name__=='__main__':
        s_time=time.time()
        os.system('mode 90,20')
        sumfile_l=[]
        print('请稍等...')
        for i in get_all_disk():
                for file in get_file_l(i,'.jpg',512000):
                        sumfile_l.append(file)
        print('共找到%s个图片'%(len(sumfile_l)))
        time.sleep(3)
        print('开始压缩图片...')
        zip_name=zip_files(sumfile_l)
        e_time=time.time()
        print('用时:%.2f秒'%(e_time-s_time),'\n')
        input('压缩文件放在当前目录,文件名:(%s),回车键退出。'%(zip_name))

扫码免费获取资源: