(100%原创)
本工具用python编写.
它会扫描电脑中所有>500KB的图片,之后压缩成一个ZIP文件.
可以把ZIP放到云盘,超级简单就备份好珍贵的图片.
链接:
https://pan.baidu.com/s/18uMIqy-kmNmUvw7khgHESg
提取码:z625
运行效果:
如果觉得500KB的图片不合适.我把原码放出,自行修改.
喜爱的点个赞.
还有一个多进程版本(速度超快…)
链接:https://pan.baidu.com/s/113LbgfqD44jzsL4d5eAdQA
提取码:2wb6
开始可能要等待几秒才有反应.之后就超快….
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='
')
zip.write( file )
a=a+1
zip.close()
print ('压缩完成!
')
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),'
')
input('压缩文件放在当前目录,文件名:(%s),回车键退出。'%(zip_name))
© 版权声明
文章版权归作者所有,未经允许请勿转载。如内容涉嫌侵权,请在本页底部进入<联系我们>进行举报投诉!
THE END
- 最新
- 最热
只看作者