我的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())
答案 0 :(得分:0)
当手动/从cron执行时,Unix中的环境可能不同。在cron中执行“env>文件”并在交互式运行时与env进行比较
答案 1 :(得分:0)
就我而言,邮件内部os.getenv
无法正常工作。
可能发生错误,因为cron脚本默认情况下没有任何shell环境变量。