Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/351.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何使用secureserver.net发送电子邮件?_Python_Email_Smtp - Fatal编程技术网

Python 如何使用secureserver.net发送电子邮件?

Python 如何使用secureserver.net发送电子邮件?,python,email,smtp,Python,Email,Smtp,我需要发送电子邮件,我已成功发送了带有以下代码的电子邮件,以gmailsmtp.gmail.com:587作为smtp服务器发送电子邮件。但我的以下代码出现错误smtpout.asia.secureserver.net import smtplib def sendemail(to_addr_list='abcd.123@xxxxx.com', cc_addr_list='abcd.3214@xxxxxx.com', subject='Test mail', message

我需要发送电子邮件,我已成功发送了带有以下代码的电子邮件,以gmail
smtp.gmail.com:587
作为smtp服务器发送电子邮件。但我的以下代码出现错误
smtpout.asia.secureserver.net

import smtplib

def sendemail(to_addr_list='abcd.123@xxxxx.com', cc_addr_list='abcd.3214@xxxxxx.com',
          subject='Test mail', message='this is a test mail', from_addr='TestAddress',
          login='user123@xxxx.co', password='xxxxxxxx',
          smtpserver='smtpout.asia.secureserver.net:25'):
    header  = 'From: %s\n' % from_addr
    header += 'To: %s\n' % ','.join(to_addr_list)
    header += 'Cc: %s\n' % ','.join(cc_addr_list)
    header += 'Subject: %s\n\n' % subject
    message = header + message

    server = smtplib.SMTP(smtpserver)
    server.starttls()
    server.login(login,password)
    problems = server.sendmail(from_addr, to_addr_list, message)
    server.quit()
    return problems

sendemail()
我得到以下错误

引发SMTPException(“服务器不支持STARTTLS扩展”)
smtplib.SMTPException:服务器不支持STARTTLS扩展。


如何解决此问题?提前感谢

错误消息是自我解释的--指定的服务器不支持给定端口上的显式TLS(STARTTLS命令)。这可能意味着您需要连接到其他端口(例如587)以拥有显式TLS,或者您需要使用隐式TLS模式连接到其他端口(465)。有关详细信息,请查看服务器文档

我已通过godaddy secureserver发送了包含以下代码的电子邮件

import smtplib

to = 'to address'
user = 'your_mail_id'#your secureserver mail_id(godaddy)
pwd = 'your_password'
smtpserver = smtplib.SMTP("smtpout.asia.secureserver.net",80)
smtpserver.ehlo
smtpserver.login(user, pwd)
header = 'To:' + to + '\n' + 'From: ' + user + '\n' + 'Subject:testing \n'
print header
msg = header + '\n Thank you for registring.\n\n'
smtpserver.sendmail(user, to, msg)
print 'done!'
smtpserver.close()

抱歉,我更新了我的问题,我已成功使用gmail发送了我在secureserver上遇到了问题。netas@Eugene说,这是一个端口问题,587适用于gmail这就是为什么您迄今为止取得了成功,但对于TLS,您需要请您的系统管理员为您的smtp指定一个端口。@toufikovich,是的,我已经尝试了所有端口80、25等,但没有结果。事实上,主要问题是我不知道如何使用
smtpout.asia.secureserver.net
@Mulagala。您是否试图通过GoDaddy上的网站发送邮件?这可能是SSL证书问题,例如端口80是安全的…@Mulagala,还有一件事。。。在打开
server.starttls()
之前,您是否尝试添加
server.ehlo()
?我试图在这里进行故障排除,但没有您的工作环境:)