# ScanCleaner **Repository Path**: ayang2019/ScanCleaner ## Basic Information - **Project Name**: ScanCleaner - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-12-14 - **Last Updated**: 2025-12-14 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # ScanCleaner - C盘文件夹大小分析器 一个功能强大的文件夹大小分析工具,帮助用户快速了解磁盘空间使用情况,找出占用空间最大的文件夹。 ## 功能特性 - 🔍 **快速扫描** - 多线程扫描,支持大容量磁盘 - 📊 **可视化显示** - 树状结构展示文件夹层级关系 - 📈 **大小排序** - 按文件夹大小自动排序,快速定位大文件夹 - 💾 **数据导出** - 支持CSV和JSON格式导出扫描结果 - ⚙️ **灵活配置** - 可自定义扫描深度、显示选项等 - 🚀 **性能优化** - 智能缓存和内存管理 - 🔄 **实时进度** - 扫描进度实时显示,支持中断操作 ## 系统要求 - Windows 10 或更高版本 - Python 3.7+ (程序基于Python开发) - 内存:建议 4GB 以上 - 磁盘空间:约 50MB ## 安装使用 ### 方法一:直接运行Python源码 1. 确保已安装Python 3.7+ 2. 下载或克隆项目源码 3. 在命令行中进入项目目录 4. 安装依赖包(可选): ```bash pip install -r requirements.txt ``` 5. 运行程序: ```bash python main.py ``` ### 方法二:编译为可执行文件(推荐) 使用PyInstaller将程序打包为独立的可执行文件: ```bash pip install pyinstaller pyinstaller --onefile --windowed --name=ScanCleaner main.py ``` 生成的可执行文件位于 `dist/` 目录中。 ## 使用说明 ### 基本使用 1. **选择扫描路径** - 在工具栏的路径输入框中输入要扫描的路径(默认为C盘) 2. **开始扫描** - 点击"开始扫描"按钮开始分析 3. **查看结果** - 扫描完成后,结果将在树状视图中显示 4. **查看详情** - 选择任意文件夹可在右侧面板查看详细信息 5. **导出数据** - 点击"导出"按钮将结果保存为CSV或JSON文件 ### 高级功能 #### 设置配置 点击"设置"按钮可以配置: - **显示设置** - 单位制式、最小显示大小等 - **扫描设置** - 扫描深度、跳过系统文件夹等 - **性能设置** - 线程数、内存优化等 #### 进度监控 - 扫描过程中会显示进度对话框 - 实时显示当前扫描路径和已处理项目数 - 可以随时取消扫描操作 #### 结果分析 - 文件夹按大小自动排序 - 双击文件夹可展开/折叠子目录 - 详细信息面板显示大小、文件数等统计信息 ## 界面预览 ``` ┌─────────────────────────────────────────┐ │ ScanCleaner - C盘文件夹大小分析器 │ ├─────────────────────────────────────────┤ │ [开始扫描] [停止] [导出] [设置] │ ├─────────────────────────────────────────┤ │ 扫描进度: ████████░░ 80% │ ├─────────────────────────────────────────┤ │ 文件夹名称 │ 大小 │ 项目数 │ ├─────────────────────────────────────────┤ │ 📁 Program Files │ 12.5 GB │ 2,156 │ │ 📁 Windows │ 25.8 GB │ 15,642 │ │ 📁 Users │ 45.2 GB │ 8,934 │ │ 📁 Myworks │ 1.0 GB │ 234 │ │ ... │ │ │ └─────────────────────────────────────────┘ ``` ## 项目结构 ``` ScanCleaner/ ├── main.py # 程序入口 ├── core/ # 核心功能模块 │ ├── scanner.py # 文件扫描核心逻辑 │ ├── formatter.py # 大小格式化工具 │ └── data_handler.py # 数据处理 ├── gui/ # 用户界面模块 │ ├── main_window.py # 主窗口 │ ├── progress_dialog.py # 进度对话框 │ └── settings_dialog.py # 设置对话框 ├── utils/ # 工具模块 │ ├── config.py # 配置管理 │ └── logger.py # 日志记录 ├── requirements.txt # 依赖包列表 └── README.md # 说明文档 ``` ## 技术特性 ### 核心技术 - **Python 3.7+** - 现代Python特性支持 - **tkinter** - 跨平台GUI框架 - **多线程** - 提高扫描性能 - **类型提示** - 增强代码可读性和维护性 ### 性能优化 - **并行扫描** - 多线程处理提高速度 - **智能缓存** - 避免重复扫描 - **内存管理** - 大文件夹优化处理 - **增量更新** - 只重新扫描变化部分 ### 安全特性 - **只读操作** - 不修改任何文件 - **权限处理** - 优雅处理无权限文件夹 - **异常捕获** - 全面的错误处理机制 ## 常见问题 ### Q: 扫描速度很慢怎么办? A: 可以在设置中调整线程数量,或者限制扫描深度。对于大磁盘,建议分段扫描。 ### Q: 某些文件夹无法访问? A: 这是正常现象,通常是系统保护文件夹。程序会自动跳过并在日志中记录。 ### Q: 内存占用过高怎么办? A: 可以在设置中启用内存优化选项,或者限制扫描深度。 ### Q: 支持其他操作系统吗? A: 程序基于Python和tkinter开发,理论上支持所有Python支持的平台,但主要针对Windows优化。 ## 开发说明 ### 环境搭建 ```bash git clone cd ScanCleaner pip install -r requirements.txt ``` ### 运行测试 ```bash python -m pytest tests/ ``` ### 代码格式化 ```bash black . --line-length=100 flake8 . --max-line-length=100 ``` ## 许可证 本项目为个人开发项目,版权归赵金戈所有。仅供学习和个人使用。 ## 作者介绍 本项目由赵金戈独立开发和维护。专注于提供实用的磁盘空间管理工具,帮助用户更好地管理计算机存储空间。 ## 更新日志 ### v1.0.0 - 2025-07-01 - 初始版本发布(作者:赵金戈) - 基本扫描功能 - GUI界面 - 数据导出功能 - 配置管理 ## 联系方式 **开发者:赵金戈** - 📱 **手机号码:** +86 13520653919 - 💬 **微信号:** 13520653919 - 📧 **邮箱:** 13520653919@163.com 如有问题、建议或商务合作,欢迎通过以上方式联系。 --- **ScanCleaner** - 让磁盘空间管理变得简单高效!