3

我正在使用以下代码使用 python stmp lib 发送电子邮件。但是当我在 unix 中执行代码时,它会手,即控制台等待,就好像它在等待我输入一些东西一样。我必须按 ctrl+Z 退出程序。

#!/usr/bin/python

import smtplib
from email.mime.text import MIMEText
textfile = '/my/folder/file.log'
fp = open(textfile, 'rb')
msg = MIMEText(fp.read())
fp.close()
msg['Subject'] = 'The contents of %s' % textfile
msg['From'] = "myid@company.com"
msg['To'] = "myid@company.com"
s = smtplib.SMTP('company.server.name')
s.sendmail("myid@company.com", "myid@company.com", msg.as_string())
s.quit()

你能告诉我哪里错了吗?

4

1 回答 1

0

正如@kwatford 在尝试使用打印语句的评论中所建议的那样,发现代码执行陷入困境

s = smtplib.SMTP('company.server.name').

正如@abarnert 建议的那样,尝试过

telnet company.server.name

失败并出现错误

telnet: Unable to connect to remote host: Connection timed out

因此,基本上无法连接到 smtp 服务器的代码导致了问题。

于 2013-07-10T01:22:34.273 回答