2016-12-04 12 views
0

Я пытаюсь отправить почту с с CGI веб-консоли с помощью ввода электронной почты поле, но он терпит неудачу с ошибкой ниже в апача бревенпослал почту из питона CGI - Ошибка

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: {'[email protected]/': (501, '5.1.3 Bad recipient address syntax')} 

Но я могу работать тот же код и возможность получать почту из оболочки python Ниже приведен код, это выглядит, когда я запускаю код cgi, который пытается преобразовать mailid с '[email protected]' в'[email protected]/ 'результате синтаксической ошибки.

import smtplib 
from email.mime.multipart import MIMEMultipart 
from email.mime.text import MIMEText 
Emailid = [email protected] 

Link='http://google.com' 


def mail(): 
     me = "[email protected]" 
     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() 

любая помощь будет принята с благодарностью, спасибо

ответ

2

Похоже EMAILID должна быть строка. Попробуйте окружить тестовую электронную почту в кавычках, чтобы сделать ее строкой.

Emailid = '[email protected]'