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 のコメントで示唆されているように、 print ステートメントを使用してみました 、コードの実行が停止していることがわかりました

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 に答える