Skip to content

自己的音乐文件夹里充斥着大量重复歌曲,这不仅占据了存储空间,还让音乐管理变得混乱不堪。为了解决这个问题,我用Python开发了一款专门用于音乐文件夹查重的工具,旨在帮助用户查找并管理重复的音乐文件,让音乐库更加整洁有序。

License

Notifications You must be signed in to change notification settings

Rensr0/Music_Finder

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

音乐文件查重工具:高效管理你的音乐库

自己的音乐文件夹里充斥着大量重复歌曲,这不仅占据了存储空间,还让音乐管理变得混乱不堪。为了解决这个问题,我用Python开发了一款专门用于音乐文件夹查重的工具,旨在帮助用户查找并管理重复的音乐文件,让音乐库更加整洁有序。

功能亮点

多样化的查重方式

  • 按文件名:通过文件名快速定位可能重复的音乐文件。
  • 按文件大小:依据文件占用空间大小进行初步筛选。
  • 按MD5值:利用文件的唯一MD5哈希值,精准找出内容完全相同的文件。
  • 混合模式:先按文件大小筛选,再对符合条件的文件计算MD5值,兼顾效率与准确性。

广泛的格式支持

支持常见的音乐格式,包括 .mp3.wav.flac.aac.ogg.m4a.ape.wma,满足不同用户的音乐收藏需求。

智能索引缓存

采用文件索引缓存技术,显著加快重复扫描速度。首次扫描后,后续扫描将利用缓存信息,大幅节省时间。

灵活的路径支持

不仅支持本地磁盘路径,还支持网络路径和映射驱动器,方便你管理跨设备的音乐文件。

可定制的搜索选项

  • 最小文件大小:设置搜索的文件大小下限,过滤掉过小的文件。
  • 最大搜索深度:控制搜索的目录层级,避免不必要的深度搜索。
  • 区分大小写:根据需求选择是否区分文件名的大小写。
  • 仅比较标题:专注于音乐文件的标题信息进行比较。

安装步骤

  1. 克隆项目仓库:
git clone https://github.com/Rensr0/Music-Finder.git
  1. 进入项目目录:
cd Music-Finder

使用指南

命令行启动

在命令行中输入以下命令启动程序

python main.py

图形界面操作

  1. 选择扫描目录:在界面中指定要进行查重扫描的音乐目录。
  2. 设置查重方式:根据需求选择合适的查重方式。
  3. 调整高级选项(可选):根据需要设置最小文件大小、最大搜索深度等高级选项。
  4. 开始搜索:点击“开始搜索”按钮,程序将开始扫描并查找重复文件。
  5. 管理重复文件:扫描完成后,在结果列表中对重复文件进行管理,如删除、移动等操作。

配置文件管理

配置文件存储在用户目录下的 .music_finder 文件夹中:

  • settings.json:保存用户的个性化设置,如搜索选项、查重方式等。
  • index/:文件索引缓存目录,用于存储文件的索引信息,提高扫描效率。

开发说明

项目结构

Music_Finder/
├── core/           # 核心功能模块
│ ├── music_finder.py # 查重核心逻辑实现
│ ├── file_info.py    # 文件信息封装类
│ ├── file_index.py   # 文件索引管理模块
│ └── enums.py        # 枚举定义文件
├── gui/            # 图形界面模块
│ ├── main_window.py  # 主窗口界面
│ └── widgets/        # 自定义控件目录
├── config/         # 配置管理模块
└── main.py         # 程序入口文件

主要类介绍

  • MusicFinder:负责实现音乐文件的查重核心逻辑,根据不同的查重方式进行文件比较。
  • FileInfo:封装文件的基本信息,如文件名、大小、MD5值等,方便后续处理。
  • FileIndex:管理文件的索引信息,包括索引的创建、更新和查询。
  • MainWindow:图形界面的主窗口,提供用户操作界面和交互功能。
  • Settings:负责管理用户的配置信息,包括读取和保存配置文件。

更新日志

v1.0.0

  • 实现基本的文件查重功能,支持多种查重方式。
  • 引入文件索引缓存系统,提高重复扫描效率。
  • 提供友好的图形界面操作,方便用户使用。
  • 支持配置保存功能,用户可保存个性化设置。

贡献指南

我们欢迎广大开发者积极参与项目的开发和维护。如果你发现了问题或有新的功能建议,请提交 Issue;如果你有代码改进或新功能实现,欢迎提交 Pull Request。

许可证

本项目遵循 GNU GPLv3 进行授权。在该许可协议的框架下,你享有充分的自由来使用、修改和分发本项目。不过,还请务必仔细研读协议的具体条款,以确保自身的使用行为完全符合规定。

About

自己的音乐文件夹里充斥着大量重复歌曲,这不仅占据了存储空间,还让音乐管理变得混乱不堪。为了解决这个问题,我用Python开发了一款专门用于音乐文件夹查重的工具,旨在帮助用户查找并管理重复的音乐文件,让音乐库更加整洁有序。

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages