7

我不得不编写一个简单的垃圾邮件过滤器,我不确定我将如何去做。

到目前为止,我已经提出了 wordlist 和域过滤,它们将给出或删除达到某个阈值的点。

例如,如果您从列入黑名单的域中撰写有关“v1agr4”的信息,您将获得 2 分的垃圾邮件,但如果您从 hotmail.com 帐户撰写有关“v1agr4”的信息,您将仅获得 1 分“垃圾邮件点”。

你们还有其他建议/资源吗?

这更多是关于学习垃圾邮件过滤器,而不是开发企业级的东西

4

6 回答 6

3

这里有一些非常好的算法信息:

http://www.paulgraham.com/spam.html

http://www.paulgraham.com/better.html

但是,说真的,为什么要重新发明轮子呢?

只需下载 K9: http: //keir.net/k9.html

于 2008-11-17T19:30:21.503 回答
3

一些与贝叶斯垃圾邮件过滤相关的开源 Java 项目(LFSR Consulting 提到过):

还有一个 C++ 额外的:

于 2008-11-18T11:50:51.663 回答
1

查看贝叶斯垃圾邮件过滤

我知道 perl 有一个库,所以我假设 java 也有一个。

于 2008-11-17T19:31:20.677 回答
0

我写了一篇花里胡哨的东西

于 2008-11-17T20:58:29.983 回答
0

您可以将其委托给分布式服务。Akismet是一个非常好的解决方案。

于 2008-11-18T12:57:23.497 回答
0

编写垃圾邮件过滤器取决于您对可扩展性的需求。

如果您想要一个可扩展的解决方案,那么内容过滤可能不是明智的选择,因为它非常消耗 CPU 和内存,您宁愿选择基于信誉的过滤或基于黑名单的过滤,这对 CPU 更友好在您的服务器上以及更容易编写。

在我的博客上写了一篇文章,从程序员的角度解释了编写垃圾邮件过滤器的想法,并涵盖了从基于内容的过滤到基于黑名单的过滤的所有选项。

于 2016-07-02T13:00:00.923 回答