猜您喜欢:
喜欢摄影和拍照的朋友们经常会将照片放到电脑上,时间长了,往往会有很多重复的照片,浪费电脑存储空间,想要清理重复照片的话,手动查找非常的麻烦,那么就需要删除重复图片的软件了,软件能够智能扫描电脑指定目录中的重复照片,支持一键删除或手动删除,方便快捷。
今天闲来无事整理素材,发现有许多重复的图片,由于数量太多无法手动翻阅删除,想想写个代码,分析了一下重复图片有些是同名的,有些内容重复不同名,返回文件名清理放弃,图片大小也放弃放弃,后来选用计算MD5的方式清除,然后先是使用os.listdir()函数遍历文件夹下的图片,在测试过程中,如果文件夹下还包含文件夹就会引发异常,后来决定用os.walk()函数来遍历;
源码注释写的比较清晰,就不多阐述,可根据自己需要封装函数,制作成死循环,添加退出条件,复用。
import os,hashlib
import numpy as np
from PIL import Image,UnidentifiedImageError
from PIL.Image import DecompressionBombError
from rich import print
from time import time
print("""[#00CED1]待清理的文件夹内如果还包含了文件夹也同样可以清理![/#00CED1][#0000FF]
@@@@@@@@ @@@ @@@ @@@ @@@ @@@ @@@ @@@@@@ @@@ @@@ @@@ @@@@@@ @@@ @@@ @@@ @@@
@@@@@@@@ @@@ @@@ @@@ @@@ @@@ @@@ @@@@@@@@ @@@ @@@ @@@ @@@@@@@@ @@@ @@@ @@@@ @@@
@@! @@! @@@ @@! @@@ @@! @@@ @@! @@@ @@! @@! @@@ @@! @@@ @@! @@! @@!@!@@@
!@! !@! @!@ !@! @!@ !@! @!@ !@! @!@ !@! !@! @!@ !@! @!@ !@! !@! !@!!@!@!
@!!!:! @!@ !@! @!@!@!@! @!@ !@! @!@!@!@! @!! @!@ !@! @!@ !@! !!@ !!@ @!@ !!@!
!!!!!: !@! !!! !!!@!!!! !@! !!! !!!@!!!! !!! !@! !!! !@! !!! !!! !!! !@! !!!
!!: !!: !!! !!: !!! !!: !!! !!: !!! !!: !!: !!! !!: !!! !!: !!: !!: !!!
:!: :!: !:! :!: !:! :!: !:! :!: !:! :!: :!: !:! :!: !:! !!: :!: :!: :!: !:!
:: ::::: :: :: ::: ::::: :: :: ::: :: :::: ::::: :: ::::: :: ::: : :: :: :: ::
: : : : : : : : : : : : : : :: : : : : : : : : : ::: : :: :
[/#0000FF] [#00CED1]待清理的文件夹内还包含文件夹也可清理![/#00CED1]""")
path = input(r"输入图片文件夹路径,例如 D:⁄python⁄tupian:")
try:
file = os.walk(path) # 遍历目录;
except FileNotFoundError: # 捕获路径不存在异常;
print('抱歉,没有这个路径!')
else:
temp = set() # 创建临时集合;
del_count = 0 # 删除图片计数;
pass_count = 0 # 非图片计数;
file_count = 0 # 总文件计数;
time1 = time()
for path_name, dir_name, file_name in file: # 遍历walk返回3个元素;
for n in file_name: # 获得每个文件名字;
full_path = os.path.join(path_name, n) # 拼接路径和文件名,获得文件完整路径;
file_count += 1 # 文件计数+1;
print(full_path)
try:
with Image.open(full_path) as t: # 打开图片;
array = np.array(t) # 转为数组;
except (UnidentifiedImageError,DecompressionBombError): # 捕获不是图片,像素炸弹异常;
pass_count += 1 # 非图片计数+1;
pass
else:
md5 = hashlib.md5() # 创建MD5对象;
md5.update(array) # 获取当前图片MD5;
if md5.hexdigest() not in temp: # 如果哈希值没有在集合中;
temp.add(md5.hexdigest()) # 就把哈希值添加到集合中;
else:
os.remove(full_path) # 如果在集合中就删除当前图片;
print(full_path+'------------------已删除')
del_count += 1 # 删除计数+1;
time2 = time()
time3 = time2-time1
if pass_count != 0:
print('[#7CFC00]非图片数据:[/#7CFC00][#800000]{0}[/#800000] 个.'.format(pass_count))
print('[#800080]一共读取图片:[/#800080][#800000]{0}[/#800000] 张.'.format(file_count - pass_count))
print('[#3CB371]删除重复图片:[/#3CB371][#800000]{0}[/#800000] 张.'.format(del_count))
print('[#0000FF]总耗时为:[/#0000FF][#800000]{:.4f}[/#800000] 秒.'.format(time3))
input('按任意键结束!!!') # 此条为了编译成EXE或在命令行运行脚本时能看见上面统计后数据所添加,如果在IDE中运行可删除;
exit() # 如果在IDE中运行可删除;
喜欢小编为您带来的删除重复图片的软件吗?希望可以帮到您~更多软件下载尽在非凡软件站。
图片处理软件 图片处理软件是一种对图像进行编辑、处理、转换的图片处理工具,图片处理软件使用简单支持功能多样,支持批量处理图片文件。图片处理软件哪个好呢?非凡为大家提供几款图片处理软件欢迎朋友们使用。
图片视频水印处理软件Bitwar Watermark Expertv2.0.3.7 Bitwar Watermark Expert是一款简洁实用...详情>>
Retouch4me Eye Vessels(图片处理工具)v0.9.9.13 人像照片拍摄之后会发现有时候眼部会出现红血丝,看起来很不美观...详情>>
adobe photoshop CC 2015 64位v20150529.r.99 Adobe Photoshop CC 2015是ADOBE推...详情>>
A Sharper Scaling(图像无损放大软件)v1.9 图像放大的时候一般都会失真,变得不那么清晰,那有什么办法能在...详情>>
在当今数字化时代,wifi信号不好常常让人感到困扰。无论是在家中工作、学习还是娱乐,不稳定的网络都会影响效率和体验。以下将从多个维度为您介绍优化家庭网络环境、解决wifi信号不好问题的有效方法。一、路由器位置优化路由器的摆放位置至关重要。应避免将其放置在金属物
在如今繁忙的航空运输中,了解货机航班信息对于相关从业者和关注物流运输的人来说至关重要。飞常准app为我们提供了便捷的查询渠道,下面就来详细介绍一下如何通过飞常准app查货机航班及航班信息。首先,打开飞常准app。进入app后,我们可以看到界面设计简洁明了,功能
在抖音的使用过程中,有时我们会不小心将视频或作品设置为仅自己可见,后续又想恢复正常的公开状态。那么,抖音设置了仅自己可见怎么解除设置呢?下面就为大家详细介绍。首先,打开抖音应用程序,登录自己的账号。进入到个人主页后,点击右上角的三条横线图标,这将打开侧边栏菜单
在使用觅伊这款社交软件时,不少用户希望能关闭地理位置展示,以保护自己的隐私或出于其他个人原因。那么,究竟该如何操作呢?首先,打开觅伊应用程序。进入主界面后,找到界面下方的“我的”选项并点击。这是我们进行各种设置的关键入口。点击“我的”后,页面会跳转至个人信息与
在这个音乐资源愈发丰富的时代,拥有自己的音乐收藏库是许多音乐爱好者的梦想。而将网易云音乐上传到云盘,就能让你随时随地畅享喜爱的歌曲。下面就跟着我一起来看看具体该怎么操作吧!选择合适的云盘首先,你得挑选一个适合自己的云盘。像百度网盘、腾讯微云、阿里云盘等都是常见
在抖音这个充满活力的平台上,拥有1000粉丝是一个重要的里程碑,它意味着更多的机会和影响力。那么,怎样才能让抖音粉丝达到1000呢?明确内容定位首先,要确定一个独特且有吸引力的内容定位。无论是美食、旅游、美妆还是其他领域,找到自己擅长和感兴趣的方向,持续输出优
本站所有资源(含游戏)均是软件作者、开发商投稿,任何涉及商业盈利目的均不得使用,否则产生的一切后果将由您自己承担!本站将不对任何资源负法律责任,所有资源请在下载后24小时内删除。
如侵犯了您的版权、商标等,请立刻联系我们并具体说明情况后,本站将尽快处理删除,联系
(版权说明注意事项)。若有关在线投稿、无法下载等问题,请与本站客服人员联系
!
用户可自行按线路选择相应的下载点,可以直接点击下载/另存为,若直接点击下载速度太慢,请尝试使用高速下载器。为确保下载的文件能正常使用,请使用WinRAR最新版本解压本站软件。
建议大家谨慎对待所下载的文件,大家在安装的时候务必留意每一步!关于360安全卫士或QQ电脑管家的有关提示,请自行注意选择操作。