你只需要提前准备好以下内容,无需额外付费,个人/中小站长完全够用:
先在本地完成第一轮过滤,可以减少云端调用次数,降低成本,同时提升检测速度。
打开电脑的命令提示符,执行以下命令,直接拉取完整的敏感词库到本地:
``` git clone https://github.com/observerss/textfilter.git ```如果你没有安装git,可以直接打开上述仓库地址,点击绿色的「Code」按钮,选择「Download ZIP」下载压缩包,解压到本地即可。
在解压好的textfilter文件夹下,新建一个名为local_filter.py的文件,将以下代码完整复制进去,无需修改任何内容即可运行:
``` import re def load_sensitive_words(file_path='sensitive_words.txt'): with open(file_path, 'r', encoding='utf-8') as f: return [word.strip() for word in f.readlines() if word.strip()] def filter_content(content, sensitive_words, replace_char=''): pattern = re.compile('|'.join([re.escape(word) for word in sensitive_words])) check_result = pattern.findall(content) processed_content = pattern.sub(lambda m: replace_char len(m.group()), content) return processed_content, len(check_result), check_result if __name__ == '__main__': sensitive_words = load_sensitive_words() test_content = input("请输入要检测的内容:") result, count, words = filter_content(test_content, sensitive_words) print(f"检测到{count}处敏感内容,敏感词为:{words}\n处理后结果:\n{result}") ```打开命令提示符,进入该文件夹,执行命令 python local_filter.py,按照提示输入内容,即可得到检测结果,完成本地过滤。

本地敏感词只能匹配固定关键词,无法识别变种、语义违规,需要对接云端AI做二次检测。
首先安装依赖,打开命令提示符执行:pip install requests
在同一个文件夹下新建 cloud_moderate.py 文件,复制以下代码,把开头的两个占位值替换成你自己的API Key和Secret Key即可:
``` import requests 替换成你自己的凭证信息 API_KEY = "替换成你的API Key" SECRET_KEY = "替换成你的Secret Key" def get_access_token(): url = f"https://aip.baidubce.com/oauth/2.0/token?grant_type=client_credentials&client_id={API_KEY}&client_secret={SECRET_KEY}" response = requests.get(url, timeout=10) if response.status_code == 200: return response.json().get("access_token") return None def text_moderate(content): access_token = get_access_token() if not access_token: return False, "获取访问凭证失败,请检查API Key是否正确" url = f"https://aip.baidubce.com/rest/2.0/antispam/v2/spam?access_token={access_token}" params = {"content": content} response = requests.post(url, data=params, timeout=10) result = response.json() 返回值说明:1=违规,2=疑似违规,0=合规 if result.get("result") == 1: return False, f"内容不合规,违规类型:{result.get('typeName')}" elif result.get("result") == 2: return False, "内容疑似违规,请人工复核" else: return True, "内容合规" if __name__ == '__main__': input_content = input("请输入待检测内容:") status, msg = text_moderate(input_content) print(msg) ```执行命令 python cloud_moderate.py,输入内容即可得到云端检测结果。
针对检测出的违规内容,按照以下规则修改即可:
所有疑似违规内容必须经过人工复核后才能发布,AI检测存在一定概率误检,不要直接自动删除。
易频IT社区是综合性互联网IT技术门户网站,专注分享网络技术、服务器运维、网络安全、编程开发、系统架构、云计算、大数据等行业干货,实时更新IT行业资讯、零基础教程、实战案例,为IT从业者、技术爱好者提供专业的学习交流平台。
Copyright © 2021-2026 易频IT社区. All Rights Reserved. 备案号:闽ICP备2023013482号 网站地图