无法在python中使用smtplib发送邮件

无法在python中使用smtplib发送邮件,python,email,smtp,smtplib,Python,Email,Smtp,Smtplib,我正在Ubuntu操作系统中运行以下代码。当我在独立机器上运行这段代码时,我没有得到任何错误。 但是,当我连接远程机器并运行相同的代码时,我会收到以下错误消息。 我还修改了端口值并尝试了多次,但问题没有得到解决。我想知道我需要检查哪里来解决这个问题 import smtplib message = ' ' sender = ' ' receivers = ' ' SUBJECT = ' ' TEXT = ' ' sender = 'sender1@abc.com' receivers

我正在Ubuntu操作系统中运行以下代码。当我在独立机器上运行这段代码时,我没有得到任何错误。 但是,当我连接远程机器并运行相同的代码时,我会收到以下错误消息。 我还修改了端口值并尝试了多次,但问题没有得到解决。我想知道我需要检查哪里来解决这个问题

import smtplib
message = ' '
sender  = ' '
receivers = ' '
SUBJECT  = ' '
TEXT     = ' '
sender = 'sender1@abc.com'
receivers = ['rec1@abc.com','rec2@abc.com']

# prepare message
SUBJECT = "Test mail "
TEXT    = """Message line1 \n
             Message line2 \n  """

message  = 'Subject: {}\n\n{}'.format(SUBJECT, TEXT)

try:
    smtpObj = smtplib.SMTP(<Value>)
    smtpObj.sendmail(sender, receivers, message)
    smtpObj.close()

except smtplib.SMTPConnectError:
       print "Error: unable to send email"

except smtplib.SMTPException:
       print "Error: unable to send email"
导入smtplib
消息=“”
发送方=“”
接收者=“”
主题=“”
文本=“”
发送者sender1@abc.com'
接收者=['rec1@abc.com','rec2@abc.com']
#准备信息
主题=“测试邮件”
TEXT=“”消息行1\n
消息行2\n“”
消息='主题:{}\n\n{}'。格式(主题,文本)
尝试:
smtpObj=smtplib.SMTP()
smtpObj.sendmail(发送者、接收者、消息)
smtpObj.close()
除了smtplib.SMTPConnectError:
打印“错误:无法发送电子邮件”
除了smtplib.SMTPException:
打印“错误:无法发送电子邮件”
错误消息:

Traceback (most recent call last):
  File "sampa.py", line 23, in <module>
    smtpObj = smtplib.SMTP(<Value>)
  File "/usr/lib/python2.7/smtplib.py", line 256, in __init__
    (code, msg) = self.connect(host, port)
  File "/usr/lib/python2.7/smtplib.py", line 316, in connect
    self.sock = self._get_socket(host, port, self.timeout)
  File "/usr/lib/python2.7/smtplib.py", line 291, in _get_socket
    return socket.create_connection((host, port), timeout)
  File "/usr/lib/python2.7/socket.py", line 571, in create_connection
    raise err
socket.error: [Errno 111] Connection refused
回溯(最近一次呼叫最后一次):
文件“sampa.py”,第23行,在
smtpObj=smtplib.SMTP()
文件“/usr/lib/python2.7/smtplib.py”,第256行,在__
(代码,消息)=自连接(主机,端口)
文件“/usr/lib/python2.7/smtplib.py”,第316行,在connect中
self.sock=self.\u获取\u套接字(主机、端口、self.timeout)
文件“/usr/lib/python2.7/smtplib.py”,第291行,在get套接字中
返回套接字。创建_连接((主机、端口),超时)
文件“/usr/lib/python2.7/socket.py”,第571行,在create_connection中
提出错误
socket.error:[Errno 111]连接被拒绝

您审查了
,这就是您收到错误的原因。确保您可以访问端口25上的
。由于种种原因,该服务器可能无法从端口25上的“远程计算机”访问。。。网络问题、防火墙、路由等…感谢您的回复。这是服务器问题。一段时间后,我们尝试了相同的代码,它成功了:)
try:
    smtpObj = smtplib.SMTP(smtp_server, port)
    smtpObj.ehlo()  # Can be omitted
    smtpObj.starttls(context=context)  # Secure the connection
    smtpObj.ehlo()  # Can be omitted
    smtpObj.login(sender, password)
    smtpObj.sendmail(sender, receivers, email_text)