Python的smtplib定期工作,但不能通过cron执行

时间:2010-08-15 17:43:16

标签: python smtplib

我的python代码如下所示。手动执行时工作正常。但是当通过cronjob执行时,电子邮件不会被发送。这是代码:

msg = MIMEMultipart()

msg['From'] = sender
msg['To'] = to
msg['Subject'] = subject
msg.attach(MIMEText(message))

mailServer = smtplib.SMTP("smtp.gmail.com", 587)
mailServer.ehlo()
mailServer.starttls()
mailServer.ehlo()
mailServer.login(login, password)
print mailServer.sendmail(login, to, msg.as_string())

2 个答案:

答案 0 :(得分:0)

当手动/从cron执行时,Unix中的环境可能不同。在cron中执行“env>文件”并在交互式运行时与env进行比较

答案 1 :(得分:0)

就我而言,邮件内部os.getenv无法正常工作。

可能发生错误,因为cron脚本默认情况下没有任何shell环境变量。