首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用python处理动态电子邮件地址

使用python处理动态电子邮件地址
EN

Stack Overflow用户
提问于 2011-03-29 16:07:42
回答 2查看 1.5K关注 0票数 5

我需要做以下工作,我想知道是否有人做过类似的事情,如果是的话,他们做了什么。

我需要编写一个程序来处理不同客户端的电子邮件,处理它们,然后根据电子邮件地址,做一些事情(添加到数据库,回复等)。

让这件事更具挑战性的是,电子邮件地址不是静态的,它们是动态的。例如。电子邮件应该是这样的。动态-电子邮件1@dynamic-subdomain1.domain.com。电子邮件是由客户端使用动态子域分组的,在本例中,它将是“1”。客户端将有自己的子域分配给他们。每个客户端都可以在自己的子域中创建自己的电子邮件地址,并将事件分配给该电子邮件。这些电子邮件地址和子域可以随时更改,新的添加,旧的删除,等等。

因此,例如,如果电子邮件'dynamic-email1@dynamic-subdomain1.domain.com‘收到一封电子邮件,那么我需要在数据库中查找哪些客户端分配了“Dynam-Subdomain1”子域,然后查看哪些事件映射到“dynamic 1”的电子邮件地址,然后执行该事件。我已经有事件处理,我只是不知道如何映射到事件的电子邮件地址。

由于电子邮件地址是动态的,使用基于文件的配置文件来处理这将是一件很痛苦的事情,所以最好在数据库中查找。我做了一些研究,我发现一些项目做类似的事情,但不完全一样。我发现最近的是Zed的Lamson项目:http://lamsonproject.org

更多背景:

  • 我目前正在使用python、django、linux、mysql、memcached。

问题:

  1. 有人用兰姆森做我想做的事吗?你觉得怎么样?
  2. 除了python之外,还有其他类似的项目吗?
  3. 我将如何设置我的DNS MX记录来处理这样的事情?

谢谢你的帮助。

更新:我对google引擎的建议做了更多的研究,它可能会奏效,但我需要改变太多的东西,它会添加太多的移动部件。我也需要一个捕获所有的电子邮件货代,谁知道好便宜的吗?我更喜欢部署在处理所有电子邮件的系统上。看起来,人们已经使用后缀,监听端口25,并将请求转发给lamson。这似乎是合理的,我要试一试,看看结果如何。我会更新我的结果。

更新2:我做了一些更多的研究,我发现了几个网站为我做了类似的事情,所以接下来我要看看它们。

http://mailgun.net

http://www.emailyak.com

EN

回答 2

Stack Overflow用户

发布于 2011-03-29 19:04:58

我做过几个使用动态电子邮件地址的项目,但从来没有同时使用动态子域。我对你的问题的想法:

  1. 我从来没有用过兰姆森,所以我不能对此发表评论。
  2. 我通常使用App引擎的API来接收和处理传入的消息,它运行得很好。您可以轻松地使用ToFromSubjectMessage字段将接收到的每条消息转换为您自己服务器上的基本From请求,并使用标准django处理这些请求。 GAE电子邮件的一个缺点是必须使用*@yourappname.appspotmail.com,但是您可以通过为*@yourdomain.com设置一个catch-all电子邮件转发器来将所有东西定向到secretaddress@yourappname.appspotmail.com来解决这个问题。这将允许您在自定义域上接收消息并使用GAE处理它们。 GAE的另一个问题/好处是使用Google的服务器而不是您自己的服务器(至少在电子邮件位上是如此)。
  3. 对于子域问题,您可以尝试为通配符DNS记录设置MX,这将(理论上)将发送到任何子域的所有邮件发送到同一服务器。这将使您能够接收所有子域上的电子邮件(无论好坏-注意垃圾邮件!)
票数 1
EN

Stack Overflow用户

发布于 2012-09-25 19:27:53

对于兰姆森来说,你有没有尝试过像这样简单的东西:

代码语言:javascript
复制
@route("(address)@(subdomain).(host)", address=".+", subdomain="[^\.]+")
def START(message, address=None, subdomain=None, host=None):
    ....
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5475540

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档