Skip to main content
 首页 » 编程设计

python之使用python连接到smtp服务器时出错

2025年05月04日8dflying

导入 smtplib

服务器 = "my.smtp.server.com"

FROM = "myemail@somehost.ca" TO = ["someemail@somehost.mun.ca"] # 必须是列表

SUBJECT = "你好!"

TEXT = "你好"

这是我的代码:

# Prepare actual message 
 
message = """\ 
From: %s 
To: %s 
Subject: %s 
 
%s 
""" % (FROM, ", ".join(TO), SUBJECT, TEXT) 
 
# Send the mail 
 
server = smtplib.SMTP(SERVER) 
server.login('loginname','password')  

这是我得到的错误:

Traceback (most recent call last): 
File "C:\Documents and Settings\Desktop\New Text Document.py", line 24, in ? 
server = smtplib.SMTP(SERVER) 
  File "C:\Python24\lib\smtplib.py", line 241, in __init__ 
    (code, msg) = self.connect(host, port) 
  File "C:\Python24\lib\smtplib.py", line 289, in connect 
    for res in socket.getaddrinfo(host, port, 0, socket.SOCK_STREAM): 
gaierror: (11001, 'getaddrinfo failed') 

接下来我该做什么?

请您参考如下方法:

dns 或 /etc/hosts 中没有 my.smtp.server.com 的 ip?

-> DNS Wikipedia

my.smtp.server.com 是真正的 (smtp-) 服务器吗?

已尝试通过 telnet 连接到 my.smtp.server.com 的端口 25?

防火墙问题?

如果你需要一个测试服务器 -> lamson