用JavaScript过滤垃圾邮件的最佳方法是什么?
我最近受到启发,为我使用的几个容易产生垃圾邮件的网站(特别是在评论中)编写了JavaScript格式的垃圾邮件过滤器。在考虑如何进行这项工作时,我意识到我有几个选择,每个都有利弊我的目标是扩展我创建的列表,并希望确定使用JavaScript过滤客户端垃圾邮件的最佳方法。 至于是什么让垃圾邮件过滤器成为“最佳”,我想说的是以下标准:用JavaScript过滤垃圾邮件的最佳方法是什么?,javascript,artificial-intelligence,greasemonkey,spam,spam-prevention,Javascript,Artificial Intelligence,Greasemonkey,Spam,Spam Prevention,我最近受到启发,为我使用的几个容易产生垃圾邮件的网站(特别是在评论中)编写了JavaScript格式的垃圾邮件过滤器。在考虑如何进行这项工作时,我意识到我有几个选择,每个都有利弊我的目标是扩展我创建的列表,并希望确定使用JavaScript过滤客户端垃圾邮件的最佳方法。 至于是什么让垃圾邮件过滤器成为“最佳”,我想说的是以下标准: 最准确 最不易受到攻击 最快的 最透明 另外,请注意,我正在尝试使用Greasemonkey用户脚本过滤非我网站上已经存在的内容。换句话说,我无法阻止垃圾邮件;我
- 最准确
- 最不易受到攻击
- 最快的
- 最透明
基于规则的过滤器: 它的作用:根据分数,通过给不同的标准(即所有大写字母、所有非字母数字等)分配一个分值,对消息进行“分级”,消息将被丢弃或保留 好处:
- 易于实现
- 大部分是透明的
- 透明-通常很容易对代码进行反向工程以发现规则,从而生成无法提取的消息
- 难以平衡的点值(误报)
- 可能很慢;必须对每条消息执行多个规则,很多时候使用正则表达式
- 在客户端环境中,需要服务器交互或用户交互来更新规则
- 不需要制定规则
- 快速(相对)
- 更难进行逆向工程
- 需要有效的培训
- 经过培训的数据必须仍然可以被JavaScript访问;通常以人类可读的JSON、XML或平面文件的形式
- 数据集可能变得相当大
- 设计拙劣的过滤器很容易与帮助降低垃圾邮件等级的常用词混淆
- 以前从未见过的单词无法准确分类;有时会导致整个消息的分类不正确
- 在客户端环境中,需要服务器交互或用户交互来更新规则
- 常规贝叶斯过滤的所有好处
- 培训数据不会透露给用户/逆向工程师
- 交通拥挤
- 仍然容易受到不寻常词语的攻击
- 仍然容易添加常用词以减少空间性
- 服务本身可能被滥用
- 为了训练分类器,可能需要允许用户提交垃圾邮件样本进行训练。攻击者可能滥用此服务
谁能帮我填空吗?谢谢,没有“最佳”方法,特别是对于所有用户或所有情况 保持简单:
最重要的是,不要以为你能猜出用户想要过滤什么!这会因人而异,甚至因情绪而异 将服务器设置为使用坏单词、坏链接目的地(.ru和.cn域)和公共垃圾邮件过滤服务的组合
最重要的是为用户提供一些方法来选择和理想地调整他们所应用的内容。所以你的目标是在用户浏览器中为没有足够内置保护的站点添加垃圾邮件检查?这样你可以动态地从站点中删除评论。有趣的是,尽管我不确定有多少站点会从中受益m it。我真正想做的是创建一个平台来实现这一点。这是第一步。然后我会将它应用到不同的网站上。Facebook是我的主要目标之一,因为大多数评论都是垃圾邮件。垃圾邮件过滤器在后端添加起来很简单。如果有问题的网站管理员懒得这么做,你最好不要使用u首先唱一下这个网站。为什么要奖励一个差劲的网站为他们工作呢?奇怪的是你提到Facebook,因为我从来没有在那里看到过垃圾邮件。你可能只是想和垃圾邮件发送者解除朋友关系。。。