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

问题描述:

我有如下所示的python代码。手动执行时,它工作正常。但是当通过cronjob执行时,电子邮件不会被发送。下面是代码:Python的smtplib定期工作,但不是在通过cron执行时不能运行

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()) 

也许当从cron.Do一个“ENV>文件”在cron手动/执行和交互式运行

在我的情况比较时,针对Env你在Unix环境是不同的,内部mailbody中没有工作的是os.getenv

也许发生错误是因为cron脚本默认不会有任何shell环境变量。