从 python CGI 发送邮件 - 错误

sent mail from python CGI - Error

我正在尝试使用电子邮件输入字段从 cgi 网络控制台发送邮件,但失败并在 apache 日志中显示以下错误

Traceback (most recent call last):
  File "/opt/apache-dba/cgi-bin/main.py", line 132, in <module>
    mail()
  File "/opt/apache-dba/cgi-bin/main.py", line 129, in mail
    s.sendmail(me, you, msg.as_string())
  File "/usr/lib64/python2.7/smtplib.py", line 742, in sendmail
    raise SMTPRecipientsRefused(senderrs)
smtplib.SMTPRecipientsRefused: {'xxx@adp.com/': (501, '5.1.3 Bad recipient address syntax')}

但我能够 运行 相同的代码并且能够接收来自 python shell 的邮件 下面是代码,这看起来像当我 运行 来自 cgi 的代码时它试图将 mailid 从 'xxx@adp.com' 转换为 'xxx@adp.com/' 导致语法错误。

import smtplib
from email.mime.multipart import MIMEMultipart
from email.mime.text import MIMEText
Emailid = xxx@gmail.com

Link='http://google.com'


def mail():
        me = "GETS.INDIA.DDS.TAM@gmail.com"
        you = str(Emailid)
        msg = MIMEMultipart('alternative')
        msg['Subject'] = "Upgrade Status Link"
        msg['From'] = me
        msg['To'] = you
        text = '%s' % str(Link)
        part1 = MIMEText(text, 'plain')
        msg.attach(part1)
        s = smtplib.SMTP('localhost')
        s.sendmail(me, you, msg.as_string())
        s.quit()

mail()

任何帮助将不胜感激,谢谢

Emailid 看起来应该是一个字符串。尝试用引号将您的测试电子邮件括起来,使其成为一个字符串。

Emailid = 'xxx@gmail.com'