前言
2年前曾整过一个开源框架——违禁词过滤框架LiteBanner。
算是一个工具类的,当时放在开源中国。因为小巧性能高,还可以自定义词库,获得了不少人的star。
因为框架自带违禁词库,违禁词库里面有什么。。。这个嘛,你懂的。因为这个原因,所以框架被整治成私有库,无法公开了。
当然响应相关部门号召,整治互联网这种行为还是需要的,是要大力支持的。
开发违禁词框架本身的出发点也是为了过滤那些不良信息。
当然词库本身是从互联网获取。别多想哈,我没那么高的修为。。。
这篇文章就来介绍下这个框架,因为不公开,所以获取方式看文末。
介绍
框架本身带有一个词库,为一个txt文件,也可以自己通过程序动态去添加词语。
结果里分为两部分,一部分是过滤出含有的敏感词语,还有一部分是过滤出的结果。敏感词语用星号表示。
直接看代码吧,非常简单易用。
代码就不放出太敏感的了。。。
public void test() throws Exception{
// 加载默认词典
BannerFilter filter = BannerFilter.DEFAULT;
// 向过滤器增加一个词,额外造个词
filter.put("坏孩子");
//TMD是词库本身有的
String sentence = "我是一个TMD的坏孩子,我不喜欢读书";
BannerResp resp = filter.process(sentence);
System.out.println(resp);
}
结果为:
BannerResp [hasSensitiveWords=true, sensitiveWords=[TMD, 坏孩子], filterStr=我是一个***的***]
就那么简单。
你完全可以把词库从DB里加载。然后启动初始化时动态添加进去。
场景适用于一些站点的信息录入,可以过滤一些不良的信息。
性能
框架是纯CPU计算,性能极其高。
曾经过滤过一部50w字的小说。用时1秒。
压测情况下,峰值可以达到30w词每秒。
获取
感兴趣的同学,想获得这个开源框架,可以关注公众号,然后回复ww
获取。
框架内的词库我已删除,免得背上传播xx的骂名,请自行发挥添加。
我是铂赛东,是一个开源作者和内容博主,热爱生活和分享。如果你对我的内容感兴趣,请转发,点赞,然后关注我。