python 特殊詞匯過濾功能的實現
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 臟話處理、特殊詞匯過濾的文章就介紹到這瞭,更多相關python 特殊詞匯過濾內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!