使用Python进行电子邮件管道/处理

使用Python进行电子邮件管道/处理,python,pipe,Python,Pipe,我正在开发一个基于web的应用程序,为此我需要能够将传入的电子邮件通过管道发送到特定地址(已经完成)和python脚本(已经完成)。我很容易设置管道,但当我向目标地址发送电子邮件时,我得到以下响应: A message that you sent could not be delivered to one or more of its recipients. This is a permanent error. The following address(es) failed: pipe

我正在开发一个基于web的应用程序,为此我需要能够将传入的电子邮件通过管道发送到特定地址(已经完成)和python脚本(已经完成)。我很容易设置管道,但当我向目标地址发送电子邮件时,我得到以下响应:

A message that you sent could not be delivered to one or more of its
recipients. This is a permanent error. The following address(es) failed:

  pipe to |/path/to/script.py
    generated by ****@****.com
    local delivery failed
脚本如下所示(显然还没有执行任何操作):

我知道所有的路径都是正确的,散列爆炸被用在其他正常运行的脚本上。所有的电子邮件需要做的就是把邮件的正文/内容拉出来并对其进行解析(将某些部分放入数据库)。我需要做些什么来修复管道以防止错误,以及一旦我有了,我如何访问电子邮件正文(我了解如何使用stdin,并阅读了一些电子邮件解析方面的内容,但这些都不起作用,尽管我不确定这是因为管道破裂还是其他原因)


感谢您抽出时间。

脚本是否可执行?邮件服务器是否有足够的权限访问和执行它?运行脚本本身是否有效?这里的帖子似乎缺少main()函数的主体。如果什么也不做,您应该使用
pass
语句。我相信它具有访问权限-它都在同一台主机(BlueHost)上,并且我能够通过表单和链接执行python脚本。我不确定文件本身是否可执行——如果我尝试通过SSH运行它,我会被告知我没有权限,sudo也不工作。但是,如果我通过python解释器(python file.py)运行它,它工作得很好。
#!/home2/tsassone/python/bin/python    
def main():    
    pass

if __name__ == '__main__':
    main()