使用python删除重复文件

使用python删除重复文件,python,file,matching,Python,File,Matching,作为一个个人项目(为了更好地学习python),我开始研究一个重复文件删除程序(特别是.mp3文件,因为我在尝试整理我的全部重复音乐收藏时想到了它)。现在,我非常清楚如何继续,匹配文件名,只提供那些相似度超过0.7的文件来删除,并对那些相同但名称完全不同的文件使用md5求和(例如:“metallica Nother matters”和“Track1”)。问题是,我不知道该如何处理那些具有不同名称的文件,并且它们彼此之间有点不同,例如,“没有其他问题”和“Track1”是相同的,只是“Track1

作为一个个人项目(为了更好地学习python),我开始研究一个重复文件删除程序(特别是.mp3文件,因为我在尝试整理我的全部重复音乐收藏时想到了它)。现在,我非常清楚如何继续,匹配文件名,只提供那些相似度超过0.7的文件来删除,并对那些相同但名称完全不同的文件使用md5求和(例如:“metallica Nother matters”和“Track1”)。问题是,我不知道该如何处理那些具有不同名称的文件,并且它们彼此之间有点不同,例如,“没有其他问题”和“Track1”是相同的,只是“Track1”在末尾有2秒的静默。我的问题是:是否有某种方法或算法可以检查文件之间的相似性?类似于字符串匹配但在文件上?不管它是一个复杂的算法,越难越好,因为我这样做只是为了学习:你可以用它来计算一段音乐的指纹。它应该能够找到类似的音乐文件

如果您想进一步推动这一点,您可以使用的api来查找有关一段音乐的确切信息

这些库在我使用的两个伟大的音乐库标记和排序应用程序中使用:和。

您可以使用,它为一段音乐计算指纹。它应该能够找到类似的音乐文件

如果您想进一步推动这一点,您可以使用的api来查找有关一段音乐的确切信息


这些库用于我使用的两个伟大的音乐库标记和排序应用程序:和。

您还可以查看win32模块,以下是链接


您还可以查看win32模块,以下是链接


根据相似性匹配MP3文件对我来说是一项非常不平凡的任务。如果您发现一个库可以进行开箱即用的匹配,那么在您的项目中使用它。如果你不能,那么我鼓励你选择一个不同的项目来学习这门语言。为了有意义地做到这一点,你可能需要解码MP3文件,而不是做一些相当复杂的统计分析,可能包括傅里叶变换声音数据的互相关。如果你真的从事这个项目,你会学到很多关于统计学的知识,而对Python了解很少。好吧,我是一名计算机科学专业的学生,有4个月的空闲时间(暑假),我有点想从事一项不平凡的工作,如果可以的话,我正在考虑使用matlab/mathematica来获取声像图,或者噪声水平(我不太熟悉声音操纵术语),然后绘制它们并比较结果图,但同样,这可能会消耗时间和内存:类似的问题:基于相似性匹配MP3文件对我来说是一项非常不平凡的任务。如果你找到一个库可以进行开箱即用的匹配,那么就在你的项目中使用它。如果你不能,那么我鼓励你去pick学习语言的另一个项目。要以有意义的方式完成这项工作,你可能需要解码MP3文件,而不是做一些相当复杂的统计分析,可能包括傅里叶变换声音数据的互相关。如果你真的从事这项工作,你将学到很多关于统计的知识,而不是一些简单的统计分析关于Python。嗯,我是一名计算机科学专业的学生,有4个月的空闲时间(暑假),我有点想从事一项非琐碎的任务,如果可以的话,我正在考虑使用matlab/mathematica来获取声像图或噪声水平(我对声音处理术语不太熟悉),然后绘制它们并比较结果图,但同样,这可能会消耗时间和内存:类似的问题:和