4

我目前在捕获、解析和排序退回的电子邮件方面遇到了麻烦。我已经很好地设置了基础知识,它可以满足我的要求,这很好......问题是退回的电子邮件中返回的消息似乎没有标准。

例如,一些服务器返回 RFC 1893 指定的错误代码,我可以通过一个简单的正则表达式来获得十分之九的错误代码。但有时服务器只是回复说电子邮件已退回,要么没有给出任何理由,要么给出的理由与任何标准完全不同。

所以我想我的问题是,有没有人对此有任何解决方案?老实说,我不想在返回的电子邮件中搜索十亿个可能的字符串。然而,不必诉诸“未知原因”或类似的东西会很好。

4

3 回答 3

2

也不是一个明确的答案,但与 Kyle 的回复类似,您可以使用基于贝叶斯/令牌的垃圾邮件过滤器来“了解”退回邮件,然后自动将它们路由到您想要处理退回邮件的任何地方。

换句话说,您有一个帐户,您可以在其中训练 spamassassin 或 spamprobe 或任何一堆不同的退回邮件(并且只有退回邮件)是“垃圾”,然后让垃圾邮件系统成为您的第二道过滤线发达。

因此,假设您的解决方案(第一个过滤器)找到了 90% 的退回邮件。你让你的系统做它通常对退回所做的任何事情,然后将它们保存到退回邮件邮箱,由 spamassasin/spamprobe 定期扫描以将这些邮件了解为“垃圾邮件”。

然后,您还可以将 spamassassin 或 spamprobe 或其他任何东西作为第二个过滤器(在您没有标记为反弹的任何东西上运行)自己估计反弹性,以及它认为“垃圾”的任何东西(因为您已经训练过想想反弹=垃圾),您还可以路由到您的程序等。

仍然需要一点点人工审核,但理论上它应该会随着时间的推移变得越来越好,因为您依赖垃圾邮件系统的学习来解释边缘情况。

于 2009-11-24T04:17:18.063 回答
2

您可以设置系统让操作员查看消息、选择字符串,然后从那里进行分类。最终,您可能希望将 1/10 降至 1/100 或 1/1,000。然而,这里总会有越来越多的极端案例。

于 2009-11-24T03:30:16.847 回答
0

我们面临同样的问题,但都没有找到任何“完美”的解决方案。我觉得你

  • 可以使用一些服务提供商(使用适当的邮件 API) - 这可以让您“外包”问题并为您提供高检测率或
  • 使用一些简单的过滤器来捕捉至少(比如说)80% 的反弹。在我们的设置中,这足以使我们的数据库保持在合理的状态。
于 2013-12-16T11:26:59.967 回答