开发者社区> 问答> 正文

Linux上如何给QQ邮箱发邮件?

a123456678 2016-06-20 16:05:44 988

公司现在每天生成一些报表,要晚上发人一些员工,因为服务器不支持ssl,重新编译nginx我也不是很懂,生产机弄坏了就完了,所以没法用phpmailer来发, 听说在linux弄个mail服务器,就能通过shell发邮件,求指点

我想做的是,每天晚上6点自动,把生成的文件通过mail的附件,发给email给其他人。

分享到
取消 提交回答
全部回答(1)
  • a123456678
    2019-07-17 19:44:16

    可以用python来做。
    使用smtplib模块。
    首先将报表以及需要发送的From ,To信息等编码好。具体可以查看RFC http://tools.ietf.org/html/rfc5321#section-2.3.1

    可以给你展示下我写的一个小DEMO。

    import smtplib
    
    def send_email_over_smtps(to_email,login_user,login_pwd):
        smtpserver = smtplib.SMTP("",587) #此处需要填写服务器地址,587是默认smtps端口
        smtpserver.ehlo()
        smtpserver.starttls()
        smtpserver.ehlo
        smtpserver.login(login_user, login_pwd)
        header = 'To:' + to_email + '\n' + 'From: ' + login_user + '\n' + 'Subject:testing \n'
        print header
        msg = header + '\n this is test msg from mkyong.com \n\n'
        smtpserver.sendmail(login_user, to_email, msg)
        print 'done!'
        smtpserver.close()
    
    if __name__ == "__main__":
        send_email_over_smtps('','','') 

    每天定时获取到文件,用crontab定时获取,然后组成邮件,发送即可。

    0 0