zoukankan      html  css  js  c++  java
  • 一个被封禁的开源框架

    前言

    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的骂名,请自行发挥添加。

    我是铂赛东,是一个开源作者和内容博主,热爱生活和分享。如果你对我的内容感兴趣,请转发,点赞,然后关注我。

  • 相关阅读:
    Java中的String为什么是不可变的? -- String源码分析
    理解值和对象-快照图
    线程Thread
    Spring Cloud中,如何解决Feign/Ribbon第一次请求失败的问题?
    不要做一个浮躁的程序员
    关于在springboot中利用@Value注解读取配置文件中的属性值得问题
    Intellij Idea expired
    javascript事件之:谈谈自定义事件
    javascript事件之: 事件冒泡, 事件捕获 ,阻止默认事件
    windows7自带远程连接工具连接不上远程,只有windows服务器版本能连接tsmmc能连接的问题
  • 原文地址:https://www.cnblogs.com/bryan31/p/15562782.html
Copyright © 2011-2022 走看看