垃圾邮件检测服务的最佳语言选择

2024-10-03 00:22:07 发布

您现在位置:Python中文网/ 问答频道 /正文

我有大约20个左右的活跃博客,得到相当多的垃圾邮件。由于我讨厌CAPCHA,另一种选择是非常智能的垃圾邮件过滤。我想建立一个简单的像restapi一样的垃圾邮件检查服务,我将在我的所有博客中使用。这样我就可以整合IP块,并将垃圾邮件检测工作交给第三方,如AkismentMollomDefensio,并且在将来的某个时候编写我自己的垃圾邮件检测程序,真正让我的大脑进入一些非常有趣的垃圾邮件检测算法。在

我选择的语言是PHP,我认为自己相当精通,我真的可以深入挖掘并提出解决方案。我觉得这个项目可以作为学习另一门语言的好练习。想到的最大的2个是Python和rubyonrails,因为每个人都在谈论它们,就像它是我们的救世主的下一个到来一样。由于这大部分只是一个API,没有面向管理或公共的任何东西,所以基本的Python运行一个简单的http服务器似乎是一个不错的选择。我有遗漏什么吗?你,伟大的社区,会推荐什么?我很乐意听到您的语言,书籍和最佳实践的建议。在

这必须按比例进行,我想把它记在心里。现在我可能可以使用第三方的免费计划,但很快我就不得不扩展整个计划,真正独立思考。现在我想我会把所有的东西都存储在MySQL数据库中,直到我可以对它进行真正的分析。谢谢!在


Tags: 程序ip算法restapi语言智能垃圾邮件解决方案
3条回答

我谦恭地推荐Lua,这不仅是因为它是一种很好的、快速的语言,已经与web服务器集成在一起,而且还因为你可以利用OSBF-Lua,一个已经连续几年赢得垃圾邮件过滤比赛的垃圾邮件过滤器。Fidelis Assis和我做了大量的工作试图将这个模型推广到电子邮件之外,我们很高兴与您合作,将其与您的应用程序集成,这正是Lua的设计初衷。在

至于扩展,在训练模式下,我们在一台2006年的机器上每秒处理数百封电子邮件,因此即使是在繁忙的网站上,也应该能很好地解决这个问题。在

我们需要和你一起在没有邮件头的情况下分类,但我已经在这个方向上努力了。欲了解更多信息,请写信nr@cs.tufts.edu。(是的,我想让人们给我发垃圾邮件。这是为了研究!)在

我的第一个问题-你为什么不使用你列出的三种服务中的一种?他们似乎正是你想要的。很抱歉你这么愤世嫉俗,但我怀疑你一个人工作在合理的时间内是否能击败那些设计这些网站所用算法的软件工程师,尤其是考虑到他们的收入来源取决于他们做得如何。在

再说一次,你可能只是比他们更聪明=p。我不是评判的人。无论如何,我推荐python,因为您所说的原因-您不需要一个花哨的公共接口,所以python在这方面缺乏卓越的性能并不重要。Python还可以很好地进行文本处理,并且它有很好的使用数据库的内置绑定(例如sqlite;当然,如果您认为有必要,可以安装MySQL)。在

缺点:可能会有点慢,这取决于你的算法有多复杂。在

Python有一些优点。在

  1. Python中有几个HTTP服务器框架。看看WSGI reference implementation,学习如何使用WSGI标准来处理web请求。它非常干净和可扩展。我们需要进行一点研究,以了解WSGI的全部内容是向请求添加细节,直到您到达处理过程中的某个阶段,在该阶段中需要制定一个应答。

  2. MIME email parsing非常简单。

  3. 之后,你将使用网站黑名单和内容过滤来检测垃圾邮件。在

    • 一个站点黑名单可以是一个大的,花哨的RDBMS。也可以是简单的pickled Python域名和IP地址集。我推荐一个简单的pickled set对象,它位于内存中。它很快。您可以让RESTful服务在收到强制刷新的GET请求时从源文件重新加载此集。

    • 文本过滤很难。我从SpamBayes开始。

相关问题 更多 >