准备工作

环境和技术栈

Java、多线程广度优先算法、正则表达式、页面抓取等等

确认需要实现的功能

  • 加载词库数据到Tire字典树中,用字典树存储词库,速度比较快
  • 利用广度优先遍历抓取整站的数据
  • 去除标签,获取每个页面的实际数据
  • 对实际数据进行分词,得到分词-偏移量列表
  • 将分词列表与Tire字典树进行对比,得到敏感词列表
  • 再根据偏移量和词组情况,回归确定是否确认是敏感词,并根据结果判断是否报警
  • 对敏感句子的识别
  • 对敏感词拼音的识别

确认功能所需的解决方案

  • 利用playwrite抓取页面
  • 利用广度优先算法+每层全部捞出来,通过线程池的方式实现多线程
  • 利用正则表达式去除标签获取实际数据
  • 利用hanlp进行分词并得到偏移量
  • 利用字典树Tire算法实现对词组预处理的方案
  • 利用对敏感句子分词形成词组,再计算最大最小偏移的方式实现对敏感句子的检测
  • 在加载词库的时候,生成两份,分别是字词组和拼音词组

图解逻辑过程

利用广度优先遍历,逐层利用多线程抓取被监测网站所有页面

敏感词检测理论算法过程相关推荐

  1. 一种基于DFA算法的敏感词检测JAVA程序片段

    本文章提供一种基于DFA算法的敏感词检测JAVA程序片段,如下: 1.构造多叉树数据结构 import org.jetbrains.annotations.NotNull;/*** 多叉树* @aut ...

  2. 敏感词检测算法review

    字符串匹配是一个技术活,敏感词检测首先有一个敏感词词库,也就是敏感词的列表. 第一个想到的方法把敏感词放到一个set里,再待检测的文本分词,到set里去匹配: 第二种方法是遍历set,用正则表达式来过 ...

  3. 写一个高性能的敏感词检测组件

    最近写了一个高性能的敏感词检测组件[ToolGood.Words]. 一.高性能,它的效率到底有多快? 如果将正则表达式的算法效率设为1,高性能可达到正则表达式的1.5万倍. 二.选一个巧妙的算法: ...

  4. 关于java中敏感词检测的一些总结

    之前项目里客户提出一个需求,需要对系统中使用文本转化成语音发送的功能进行敏感词检测,禁止用户提交有敏感词的语音.通过查询各方面资料,整理了大概几种方案: 项目启动时对载入敏感词库作为缓存(一个大map ...

  5. Go+PHP实现敏感词检测

    概述 广告,敏感词检测一直以来都是让人头疼的话题,仅仅通过添加敏感词列表是解决不了问题的.今天封禁了这个词,明天又会有新的违禁词冒出来,比起愚公无穷尽的子孙更甚. 敏感词匹配这种治标不治本的方法,在一 ...

  6. 对敏感词过滤(DFA算法)的思考与理解

    对敏感词过滤的思考与理解 一.技术概述 1.这个技术是干什么用的? 2.学习这个技术的原因 3.技术的难点在哪 二.技术详述 1.流程图 2.代码 三.技术过程中遇见的问题和解决过程 四.总结 五.参 ...

  7. 敏感词之 DFA 算法

    敏感词之 DFA 算法 常用算法 遍历匹配 将输入的词语,与词库中的敏感词逐个字符遍历,对比是否包含 优点:思路简单,易于实现(KMP 算法,Brute-Force 算法) 缺点:当词库数目非常大时, ...

  8. java 敏感词检测

    在网上看到好多的敏感词检测,发现都是在推荐某某算法,但是敏感词全是利用文本去存放.在项目中不能很好的进行维护和管理(个人看法). 本文的敏感词的检测方式还是DFA算法检测,不过敏感词存放地址放入了Re ...

  9. 【敏感词检测】用DFA构建字典树完成敏感词检测任务

    任务概述 敏感词检测是各类平台对用户发布内容(UGC)进行审核的必做任务. 对于文本内容做敏感词检测,最简单直接的方法就是规则匹配.构建一个敏感词词表,然后与文本内容进行匹配,如发现有敏感词,则提交报 ...

  10. 一次敏感词检测开发记录

    需求 用户上传execl,前端解析excel ,解析之后,将excel的json数据,传给后端,后端通过关键字检测算法,返回你之前传的数据,并且附件敏感字.然后前端渲染数据只table.并且用户以到e ...

最新文章

  1. 根据ip获取地理位置
  2. 视频监控成AI芯片主战场,海康威视和大华股份占据半壁江山
  3. 针对还没搞懂javascript中this关键字的同学
  4. 简单实现ibatis的物理分页
  5. python怎么安装pandas模块-python如何导入安装pandas模块并使用别名
  6. python决策树生成规则_如何从scikit-learn决策树中提取决策规则?
  7. 国内常用的学习flutter地址
  8. 开机启动项_开机时出现“checking media presence”
  9. 增强for循环:本质是迭代器
  10. oracle11g数据库登录01017,连接oracle数据库报错ORA-01017、重置用户的密码
  11. 手把手搭建K3cloud插件开发环境
  12. 手工清除U盘里的恶意病毒
  13. uni-app中$navigateTo失效
  14. 23种设计模式11---享元模式
  15. html5黑板源码,HTML5/Canvas黑板涂鸦动画
  16. 对方波信号进行傅里叶级数展开,利用matlab绘制展开后的波形
  17. 天下所有的事,都是为了利益,都是按利益逻辑规律在运行,发生的一切事情都可以用利益逻辑来解释。
  18. 重磅干货 | 五万字长文总结 C/C++ 知识(下)
  19. Flash Socket编程
  20. 手机计算机用户使用说明书模板,中国移动家庭宽带用户手册范本.doc

热门文章

  1. TakeColor鼠标位置不对/取色不准
  2. JMeter之脚本录制
  3. vrPlus之ARView教程,可实现zView效果,无需二次开发
  4. 数据结构 复习攻略 新手必看
  5. linux打包解压工具,linux下的解压,打包工具
  6. 数据库字典收集整理,设计数据表时可拿来查考
  7. 超分辨率重建测试(DASR)
  8. 2021华为软挑-成渝复赛复盘
  9. windows自带黑体_win7系统黑体字体
  10. 在Visual Studio 2010中创建多项目(解决方案)模板【一】