Python使用better_profanity库过滤敏感词汇详解

夏知夏
夏知夏
发布时间:2026-10-15 | 5人浏览过
原创

本文介绍如何使用Python的better_profanity库轻松过滤敏感词汇。涵盖库的安装方法、默认英文脏话处理、自定义替换字符、加载本地词库文件以及检测语句是否包含敏感词等核心功能,帮助开发者快速实现内容安全过滤。

Python的一大优势在于能够便捷地集成各类第三方库。近期在GitHub上发现了一个处理敏感内容的实用工具better_profanity,只需导入该库并编写少量代码,即可实现高效的过滤功能,操作十分简便。

首先通过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 !

通过加载自定义词汇列表,可以成功过滤掉指定的非标准敏感词。

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利用better_profanity库过滤敏感词汇的详细介绍。如需了解更多Python相关内容,建议查阅本站过往文章或继续浏览后续教程,感谢大家的支持。

相关标签:

本站声明

本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。

Python 相关产品和应用

全部下载

专题列表