python (18)在linux中如何实现定时发送邮件到指定邮箱,监测任务
2016-06-27 18:50
1011 查看
最近要用到,定时发送邮件功能:
如何定时,当然要用到linux中crontab了
如下的代码能够定时发送邮件
View Code
如何定时,当然要用到linux中crontab了
如下的代码能够定时发送邮件
#!/usr/bin/env python #coding=utf-8 import smtplib from email.MIMEText import MIMEText from email.MIMEMultipart import MIMEMultipart from email.MIMEBase import MIMEBase from email import Encoders import time mail_body='hello, this is the mail content' mail_from=''#发件人的邮箱 mail_to=['']#收件人邮箱 # 构造MIMEMultipart对象做为根容器 msg=MIMEMultipart() # 构造MIMEText对象做为邮件显示内容并附加到根容器 body=MIMEText(mail_body) msg.attach(body) # 构造MIMEBase对象做为文件附件内容并附加到根容器 # 等同于如下3行 #contype = 'application/octet-stream' #maintype, subtype = contype.split('/', 1) #part = MIMEBase(maintype, subtype) part = MIMEBase('application', 'octet-stream') # 读入文件内容并格式化,此处文件为当前目录下,也可指定目录 例如:open(r'/tmp/123.txt','rb') part.set_payload(open('123.txt','rb').read()) Encoders.encode_base64(part) ## 设置附件头 part.add_header('Content-Disposition', 'attachment; filename="herb.zip"') msg.attach(part) # 设置根容器属性 msg['Subject']='this is the title' msg['From']=mail_from msg['To']=';'.join(mail_to) msg['date']=time.strftime('%a, %d %b %Y %H:%M:%S %z') #如上得到了格式化后的完整文本msg.as_string() #用smtp发送邮件 smtp=smtplib.SMTP() smtp.connect('')#服务,如果是163的邮箱,就填上smtp.163.com smtp.login('发件的邮箱','发件的密码') smtp.sendmail(mail_from,mail_to,msg.as_string()) smtp.quit() print 'ok'
View Code
相关文章推荐
- centos安装python2.7和pip2.7
- centos命令
- 【Linux】完全解读Linux环境变量
- Linux系统灾难性恢复
- [Linux] 内核的 /proc 文件系统介绍及使用方法
- centos下svn命令
- [Linux] NFSv4 and Autofs caveats
- i2c驱动程序
- Centos 6 编译安装LNMP
- Linux中debugfs的解析
- linux下设置共享目录
- windows下eclipse工程转到linux下源代码注释以及输出字符串中中文乱码解决方法
- Linux创建、删除 文件和文件夹
- linux安装常用命令工具包wget,cmake等
- eclipse在linux下的快捷启动
- ARM Linux开发板修改root登录密码
- linux下导入、导出mysql数据库命令
- linux shell的流程控制
- 在linux上如何通过composer安装yii
- centos7最小安装后常常需要添加的命令