Skip to content

elitever/baidu-netdisk-filename-normalizer

 
 

Repository files navigation

百度网盘上传文件名规范化工具 🛠️

一个专门用于处理百度网盘上传文件名规范化的Python工具包,帮助清理和规范化文件名以避免上传问题。

📋 功能概述

本工具包包含4个核心功能模块,按照使用顺序编号:

1️⃣ 删除百度网盘临时文件 (1_delete_double_extensions.py)

  • 功能:清理百度网盘上传过程中产生的临时文件
  • 目标:删除所有 .baiduyun.uploading.cfg 后缀的文件
  • 特性
    • 递归扫描整个目录树
    • 统计删除成功/失败的文件数量
    • 详细的错误报告

2️⃣ 扫描特殊字符 (2_scan_special_chars.py)

  • 功能:检测文件和文件夹名中的问题字符
  • 检测内容
    • 表情符号 (emoji)
    • 空格
    • 特殊字符:/ \ : * ? " < > |
  • 输出:生成结构化的 Markdown 报告 (issues.md)

3️⃣ 批量重命名特殊字符 (3_rename_special_chars.py)

  • 功能:将问题字符替换为安全字符
  • 处理规则
    • 表情符号 → 下划线
    • 特殊字符 → 下划线
    • 合并多个连续下划线
    • 保留中文、英文、数字、点号、短横线、括号、下划线
  • 特性
    • 自底向上处理(先处理文件,再处理文件夹)
    • 失败项详细日志

4️⃣ 回滚重命名操作 (4_rollback_rename.py)

  • 功能:撤销重命名操作,恢复原始文件名
  • 依赖:需要 rename_log.json 日志文件
  • 注意:当前版本需要手动创建日志文件

🚀 使用方法

环境要求

  • Python 3.6+
  • 可选:emoji 包(用于更精确的emoji检测)
# 安装emoji包(可选)
pip install emoji

使用步骤

  1. 清理临时文件
python 1_delete_double_extensions.py
  1. 扫描问题文件名
python 2_scan_special_chars.py

执行后会生成 issues.md 报告文件

  1. 批量重命名
python 3_rename_special_chars.py
  1. 如需回滚操作
python 4_rollback_rename.py

⚠️ 注意:回滚功能需要重命名日志文件支持

📁 项目结构

百度网盘上传文件名规范化/
├── 1_delete_double_extensions.py    # 删除临时文件
├── 2_scan_special_chars.py          # 扫描特殊字符
├── 3_rename_special_chars.py        # 批量重命名
├── 4_rollback_rename.py             # 回滚操作
└── README.md                        # 项目说明文档

⚡ 快速开始

  1. 将工具包放置在需要处理的目录中
  2. 依次运行脚本 1 → 2 → 3
  3. 检查 issues.md 了解处理情况
  4. 如需撤销,运行脚本 4

🔧 技术细节

支持的安全字符

  • 中文字符 (\u4e00-\u9fa5)
  • 英文字母和数字 (\w\d)
  • 特殊符号:. - ( ) _

不安全字符处理

  • 空格和特殊字符 / \ : * ? " < > |_
  • 表情符号 → _
  • 多个连续下划线 → 单个下划线

🛡️ 注意事项

  1. 备份重要数据:重命名操作不可逆,建议先备份重要文件
  2. 权限问题:确保对目标文件夹有读写权限
  3. 路径长度:Windows系统注意路径长度限制
  4. 并发操作:避免在文件传输过程中运行工具

🐛 故障排除

常见问题

Q: 删除临时文件时提示权限错误 A: 确保文件未被占用,关闭百度网盘客户端后重试

Q: 重命名操作失败 A: 检查文件是否正在使用中,查看错误日志获取详细信息

Q: emoji包安装失败 A: emoji包为可选依赖,不安装也可正常使用基础功能

📝 更新日志

  • v1.0 - 初始版本,包含基础的文件名规范化功能

🤝 贡献

欢迎提交Issue和Pull Request来改进此工具!

📄 许可证

本项目采用 MIT 许可证,详见 LICENSE 文件。


💡 提示:建议在重要文件夹上首次使用时,先在测试目录中验证工具行为。

About

百度网盘上传文件名规范化工具 - 清理和规范化文件名以避免上传问题

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • Python 100.0%