大致功能:可指定掃描Windows上的某個目錄的所有檔案,單個檔案掃描,目前適配支援的檔案字尾有:"pdf"、"txt、"doc"、"docx",軟體是開源的,大家可以在此基礎上擴充套件更多型別的字尾。掃描到某個檔案內容中包含敏感詞時,會把這個檔名放到異常檔案列表,等待忽略或者刪除(刪除檔案內容中的敏感詞)操作。支援匯出掃描的檔案和包含的敏感詞。
github開源地址:GitHub -
2424004764/scan-folder-all-file: 使用tkinter開發的一款可掃描並刪除本地檔案敏感詞的Windows軟體
軟體介面如下:
先點選選擇資料夾按鈕,之後軟體開始自動掃描這個資料夾下的所有檔案,子資料夾也不會放過,掃描為逐個檔案掃描,掃描到的檔案先在已掃描檔案列表顯示,如果這個檔案包含敏感詞,則會出現在異常檔案列表中,再異常檔案列表中可以對這個檔案進行刪除操作,可刪除這個檔案中所有敏感詞。如某個txt檔案中包含"123測試456測試",我們的敏感詞庫中就有"測試",那麼執行刪除操作後,檔案內容就變成了"123456",刪除了所有的"測試"字樣。
來一個測試,我在桌面有一個test檔案:
掃描一下:
顯示掃描到來敏感詞,我們點選刪除:
敏感詞被刪除了。
支援的功能:
1、預設狀態僅可點選選擇資料夾按鈕,匯出、停止按鈕此時不可用
2、逐個掃描並顯示已掃描檔案和異常檔案(包含敏感詞)
2.1、此時會逐個追加到列表,並在列表可忽略或刪除操作
2.2、掃描過程中會給已掃描的檔案加索引號,刪除或忽略時自動重排索引
3、掃描過程可中斷
4、掃描完成後可匯出已掃描檔案和異常檔案
5、匯出的異常檔案包含所有敏感詞
6、敏感詞可配置、可擴充套件,目前僅能從本地載入,未來可擴充套件為從雲端載入,動態擴充套件敏感詞庫
7、刪除檔案時是真實刪除電腦系統檔案!,請謹慎操作,不提供恢復方法
7.1、刪除後會先刪除電腦檔案,再刪除列表檔案
8、點選忽略時將該檔案從已掃描列表或者異常檔案列表剔除,後續的匯出就不會匯出這個檔案了
9、軟體可自由配置標題和logo,後續也可透過雲端獲取配置的方式載入
10、掃描過程中動態展示已掃描的資料夾數量和已掃描的檔案數
11、重新選擇一個檔案掃描時,上一次的掃描結果會自動清空,且匯出、選擇資料夾按鈕暫時不可用,
此時停止掃描按鈕變為可用狀態
12、介面可以放大縮小,不影響功能和顯示
13、可自由打包為exe
更新:
1、支援掃描檔案內容
2、支援刪除檔案內容
3、支援的檔案型別:txt、pdf、doc、docx
4、匯出的異常檔案報告包含該檔案包含的所有敏感詞
配置:
1、可配置軟體標題
開啟consts.py:
更改SOFT_NAME的值
2、可配置軟體logo
將本地的logo.ico替換重新執行即可
3、更新敏感詞庫
開啟consts.py:
對ERROR_WORDS操作即可,可新增、刪除、修改
如新增一個敏感詞為“測試”,在原有基礎上:ERROR_WORDS = [
"木馬", "命令", "shell"
]
修改為:ERROR_WORDS = [
"木馬", "命令", "shell", "測試"
]
注意不要改變產量名或者資料結構!
未來展望:
1、敏感詞庫可以雲端管理,軟體啟動後自動載入雲端敏感詞庫
2、掃描的所有檔名都可以上傳雲端伺服器分析
3、掃描完成可傳送簡訊或郵件通知
4、可掃描檔案內容,透過本地讀取檔案內容方式判斷是否為病毒檔案或者異常檔案
專案執行:
1、python版本建議3.10
2、建議使用conda虛擬環境,配置好虛擬環境後,使用命令安裝專案所需包:
pip install -r requirements.txt
3、執行:使用命令:
python main.py
或者在pycharm開啟的話,點選執行按鈕即可一鍵啟動
4、打包為exe可執行檔案:
pyinstaller --noconsole -y --add-data "*;." --add-data "./logo.ico;." -i logo.ico -F -n 掃描檔案 main.py
--noconsole指令表示不顯示控制檯
-y指令表示預設選擇確定,因為可能重複打包,需要詢問是否刪除之前打包好的exe
--add-data 將當前目錄下所有內容一起打包
-i logo.ico 指定logo
-F 產生一個檔案用以部署,沒有其餘檔案
-n 指定軟體名
打包的exe在dist下,二次打包前,最好先刪除dist、build兩個資料夾和掃描檔案.spec檔案
程式碼參考:
1、解析doc、docx:
https://blog.csdn.net/weixin_40449300/article/details/79143971
目前存在的問題:
1、修改pdf檔案後,pdf檔案大小會暴增,我自己測試新增的一個15kb的pdf在我刪除其中的某些關鍵字後,大小變成了800kb。
這篇文章就到這裡啦!如果你對文章內容有疑問或想要深入討論,歡迎在評論區留言,我會盡力回答。同時,如果你覺得這篇文章對你有幫助,不妨點個贊並分享給其他同學,讓更多人受益。
想要了解更多相關知識,可以檢視我以往的文章,其中有許多精彩內容。記得關注我,獲取及時更新,我們可以一起學習、討論技術,共同進步。
感謝你的閱讀與支援,期待在未來的文章中與你再次相遇!