一個專為處理 Excel 檔案密碼保護而設計的自動化工具,支援批次處理、壓縮檔案解壓縮和智能檔案重新命名。
- 🔓 自動密碼破解:使用預設密碼本自動破解 Excel 檔案密碼
- 📦 壓縮檔案處理:支援 ZIP/RAR 壓縮檔案的解壓縮和處理
- 🏷️ 智能重新命名:根據店家資訊自動重新命名檔案
- 📊 詳細日誌記錄:生成完整的處理報告和錯誤日誌
- 🔄 檔案衝突處理:自動備份重複檔案,避免覆蓋
處理後的檔案會按照以下格式重新命名:
{shop_name}_{shop_id}_{shop_account}_{執行日期時間}_{流水號}.xlsx
MOMO 平台的檔案會自動根據檔名前綴進行子分類:
{shop_name}_{shop_id}_{shop_account}_{momo_category}_{執行日期時間}_{流水號}.xlsx
範例:
店家名稱A_SHOP01_account123_20250116_143052_01.xlsx(一般平台)店家名稱A_SHOP01_account123_A1102_2_20250116_143052_01.xls(MOMO 平台 - A1102_2 分類)店家名稱A_SHOP01_account123_A1102_3_20250116_143052_01.xls(MOMO 平台 - A1102_3 分類)店家名稱A_SHOP01_account123_C1105_20250116_143052_01.xls(MOMO 平台 - C1105 分類)
上述範例僅為示意,實際檔名會依照
shops_master.json中的店家資料自動產生。
- 作業系統:Windows 10/11
- Python:3.7 或以上版本(僅開發模式需要)
- 依賴套件:
msoffcrypto-tool- Excel 密碼處理rarfile- RAR 檔案解壓縮zipfile- ZIP 檔案解壓縮(Python 內建)
Windows 執行檔版本(無需安裝 Python):
查看所有版本: GitHub Releases
- 下載
Excel密碼移除工具_v3.0.1.exe(檔名:Excel_Password_Remover_v3.0.1.exe) - 解壓縮到任意目錄
- 確保
mapping/shops_master.json檔案存在 - 將要處理的檔案放入
input/資料夾 - 雙擊執行
Excel密碼移除工具_v3.0.1.exe
詳細操作說明請參考: 操作說明.md
-
下載專案
git clone https://github.com/bruce-yang-422/excel_password_remover.git cd excel_password_remover -
安裝依賴
pip install -r requirements.txt
-
設定環境
- 確保
mapping/shops_master.json檔案存在 - 建立必要的資料夾結構
- 確保
-
設定 UnRAR.exe(處理 RAR 檔案需要)
- 下載 UnRAR for Windows:https://www.rarlab.com/rar_add.htm
- 解壓縮下載的檔案,找到
UnRAR.exe - 將
UnRAR.exe複製到scripts/資料夾中 - 注意:如果不需要處理 RAR 檔案,可以跳過此步驟
- 下載
Excel密碼移除工具_v3.0.1.exe(見上方下載連結) - 解壓縮並執行
- 詳細說明請參考 操作說明.md
Windows 用戶:
# 雙擊執行
main.batPowerShell 用戶:
# 執行 PowerShell 腳本
.\menu.ps1Python 直接執行:
python scripts/batch_password_remover.pyexcel_password_remover/
├── input/ # 放置需要處理的檔案
│ ├── Shopee_files/ # 蝦皮平台檔案
│ ├── MOMO_files/ # MOMO 平台檔案
│ ├── PChome_files/ # PChome 平台檔案
│ ├── Yahoo_files/ # Yahoo 平台檔案
│ ├── ETMall_files/ # ETMall 平台檔案
│ ├── mo_store_plus_files/ # MO Store Plus 平台檔案
│ └── coupang_files/ # Coupang 平台檔案
├── output/ # 處理後的檔案輸出位置
├── log/ # 執行日誌檔案
├── temp/ # 臨時檔案目錄
├── mapping/ # 店家資料和密碼本
│ ├── shops_master.json # 店家資料和密碼
│ ├── csv_to_json_converter.py # CSV 轉 JSON 工具
│ └── A02_Shops_Master - Shops_Master.csv
├── scripts/ # Python 腳本檔案
│ ├── batch_password_remover.py # 主要處理腳本
│ ├── csv_to_json.py # CSV 轉 JSON 工具
│ └── TreeMaker.py # 目錄樹生成工具
├── main.bat # Windows 批次檔
├── menu.ps1 # PowerShell 腳本
└── requirements.txt # Python 依賴套件
.xlsx- Excel 2007 及以上版本.xls- Excel 97-2003 版本
.zip- ZIP 壓縮檔案.rar- RAR 壓縮檔案
- 載入資料:讀取
mapping/shops_master.json中的店家資料和密碼 - 掃描檔案:檢查
input/目錄及平台資料夾中的所有檔案 - 平台識別:根據檔案所在資料夾識別對應平台
- 解壓縮:處理壓縮檔案並提取 Excel 檔案
- 密碼破解:使用平台特定密碼破解 Excel 檔案
- 重新命名:使用統一格式
{shop_id}_{shop_account}_{shop_name}_{執行日期時間}_{流水號}重新命名檔案 - 輸出結果:將處理後的檔案移動到
output/目錄 - 生成日誌:記錄處理結果和錯誤資訊
mapping/shops_master.json 檔案包含以下資訊:
{
"platform_index": {
"Shopee": {
"EXAMPLE_PASSWORD": {
"platform": "Shopee",
"shop_id": "SHOP01",
"shop_account": "shop_account_1",
"shop_name": "店家名稱A",
"shop_status": "Active",
"Universal Password": "EXAMPLE_PASSWORD",
"Report Download Password": "EXAMPLE_PASSWORD"
}
},
"MOMO": {
"EXAMPLE_PASSWORD": {
"platform": "MOMO",
"shop_id": "MOMO01",
"shop_account": "shop_account_2",
"shop_name": "店家名稱B",
"shop_status": "Active",
"Universal Password": "EXAMPLE_PASSWORD",
"Report Download Password": "EXAMPLE_PASSWORD"
}
}
}
}如需更新密碼本,請:
- 修改
mapping/A02_Shops_Master - Shops_Master.csv - 執行
python mapping/csv_to_json_converter.py轉換為 JSON 格式 - 重新執行程式
- 檔案會重新命名並移動到
output/目錄 - 生成詳細的處理日誌
- 錯誤資訊會記錄在日誌中
- 原始檔案保持不變
- 重複檔案會自動備份到
backup/目錄 - 使用時間戳記避免覆蓋
-
Python 未安裝
- 請安裝 Python 3.7 或以上版本
- 確保 Python 已加入系統 PATH
-
依賴套件缺失
pip install -r requirements.txt
-
RAR 檔案無法解壓縮
- 請確認
scripts/UnRAR.exe檔案存在 - 如果不存在,請下載 UnRAR for Windows:https://www.rarlab.com/rar_add.htm
- 將
UnRAR.exe複製到scripts/資料夾中 - 重新執行程式
- 請確認
-
密碼本檔案不存在
- 確保
mapping/shops_master.json檔案存在 - 檢查檔案路徑和權限
- 確保
處理完成後,請檢查 log/ 目錄中的日誌檔案:
- 查看處理結果統計
- 檢查錯誤訊息
- 確認檔案重新命名情況
- ✅ 新增 MOMO 平台檔案子分類功能
- ✅ MOMO 檔案自動根據檔名前綴提取分類(如 A1102_2、A1102_3、C1105)
- ✅ MOMO 檔案命名格式加入分類資訊
- ✅ 優化檔案命名規則說明
- ✅ 重構專案架構,改為模組化設計
- ✅ 新增平台分類資料夾支援
- ✅ 統一檔案命名規則為
{shop_id}_{shop_account}_{shop_name}_{執行日期時間}_{流水號} - ✅ 新增 CSV 到 JSON 轉換工具
- ✅ 新增 PowerShell 執行腳本
- ✅ 優化平台特定密碼測試邏輯
- ✅ 保留商店名稱中的點號字符
- ✅ 更新 .gitignore 排除敏感檔案
- ✅ 整合所有功能到單一腳本
- ✅ 更新檔案命名規則
- ✅ 簡化操作流程
- ✅ 移除互動式選單
- ✅ 基本密碼移除功能
- ✅ 壓縮檔案處理
- ✅ 批次處理支援
本專案採用 MIT License 開源授權條款。
- ✅ 商業使用:可用於商業專案
- ✅ 修改:可以修改原始碼
- ✅ 分發:可以分發原始碼和編譯版本
- ✅ 私人使用:可以用於私人專案
- ✅ 專利使用:可以使用專利
⚠️ 授權和版權聲明:必須包含原始授權聲明和版權聲明- ❌ 責任:不提供任何擔保
完整授權條款請參閱 LICENSE 檔案。
歡迎提交 Issue 和 Pull Request 來改善這個工具!
如有問題或建議,請透過以下方式聯絡:
- 提交 GitHub Issue
- 發送電子郵件
注意:使用本工具時請確保遵守相關法律法規,僅用於合法的檔案處理需求。