python輕鬆過濾處理髒話與特殊敏感詞彙的方法

大雄45發表於2022-08-11
導讀 我們開發的系統往往都離不開資訊的處理,這些資訊有的內容非常敏感,就需要過濾掉不容許出現

python的其中一個強大之處就是它可以方便的整合很多的非標準庫,今天在GitHub上溜達又發現了一個髒話處理神器,匯入better_profanity庫後,只需要幾行程式碼就能搞定了,相當nice!

使用pip的方式將better_profanity非標準庫安裝好,這個庫好像在清華大學的映象站中沒有,其他映象站不知道有沒有,於是下載時沒有使用映象站,預設到官方去下載即可。

pip install better_profanity
# 將處理模組直接匯入到程式碼塊中
from better_profanity import profanity
1、預設髒話庫/敏感詞庫處理

預設情況下就只能處理英文的髒話。

censored_text = profanity.censor("you are bitch")
print(censored_text)
# you are ****

可以看到其中bitch字元被認為是髒話已經處理成****字元了。

當然,還可以將處理後的髒話字元換成別的字元代替,比如下面這樣處理。

censored_text = profanity.censor("you are bitch",'-')
print(censored_text)
# you are ----

這樣****就被替換成了----。

2、自定義過濾資訊處理
bad_words = ['Python', 'Java', 'Scala']  # 自定義過濾詞彙
profanity.load_censor_words(bad_words)  # 載入自定義過濾詞彙
censored_text = profanity.censor("Python is very Good !")  # 執行過濾
print(censored_text)
# **** is very Good !

可以發現,想要過濾的python字元已經成功過濾掉了。

3、contains_profanity函式

contains_profanity函式用來檢視我們的語句中是否包含需要過濾的詞彙,如果包含則會返回True,否則返回False。

bad_words = ['bitch', 'Java', 'Scala']  # 自定義過濾詞彙
profanity.load_censor_words(bad_words)  # 載入自定義過濾詞彙
censored_text = profanity.contains_profanity("you are bitch")
print(censored_text)
# True

結果為True,表示包含需要過濾的詞彙資訊。

4、load_censor_words_from_file函式

load_censor_words_from_file函式用於載入需要過濾詞彙的檔案。

profanity.load_censor_words_from_file('/usr/load/bad_words.txt')

載入完詞彙檔案之後,按照之前的邏輯處理即可。

詞彙檔案的定義格式,按照每個詞彙獨佔一行的形式進行定義,檔案格式使用.txt文字文件即可。

# bitch
# bitches
# bitchin
# bitching
# blowjob
# blowjobs
# blue waffle

到此這篇關於python輕鬆過濾處理髒話與特殊敏感詞彙的文章就介紹到這了

原文來自:


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69955379/viewspace-2909922/,如需轉載,請註明出處,否則將追究法律責任。

相關文章