python自动发送邮件脚本


Posted in Python onJune 20, 2018

本文实例为大家分享了python自动发送邮件的具体代码,供大家参考,具体内容如下

#coding=utf8  
''''' 
该模块使自动发送邮件的模块 
模块初始化时需要设置: 
sender:发送人 
reciver:接收者 
smtpServer:发送人的服务器类型 
password:登录命令 
subject:邮件标题 
datafile:数据文件 
 
文件包含六个函数: 
senderLogin():连接服务并登录服务 
setSubject():设置邮件标题 
SendMessage():邮件发送的信息 
sendMail():发送邮件 
quitMail():关闭邮件服务 
run():执行登录、设置邮件标题、设置邮件发送信息、发送邮件、关闭邮件服务 
 
''' 
import smtplib  
from mangerResultFile import FileManger  
from email.mime.text import MIMEText  
from email.mime.multipart import MIMEMultipart  
class AutoMail(object):   
  def __init__(self,sender,reciver,smtpServer, password,subject,datafile): 
    #设置发送人 
    self.sender=sender 
    #设置登录密码 
    self.password=password 
    #设置接收者 
    self.reciver=reciver 
    #设置邮件标题 
    self.subject=subject 
    #设置附件路径 
    self.datafile=datafile 
    #设置发送邮件服务 
    self.smtpServer=smtpServer 
    #创建一个smtp实例 
    self.smtp = smtplib.SMTP()  
    #设置下发送信息包含的类型的信息体 
    self.msgRoot =MIMEMultipart('related')  
    #调用run函数运行 
    self.run()  
   
  #发送用户登录 
  def senderLogin(self): 
    #通过smtp实例的connect方法连接发送邮件服务 
    self.smtp.connect(self.smtpServer)  
    #通过smtp实例的login方法登录发送邮件服务  
    self.smtp.login(self.sender,self.password)  
     
  def setSubject(self): 
    #设置邮件标题 
    self.msgRoot['Subject']=self.subject 
     
  def SendMessage(self): 
    #读取附件信息到att中 
    att =MIMEText(open( self.datafile, 'rb').read(), 'base64', 'utf8')  
    #设置att的内容类型 
    att["Content-Type"]= 'application/octet-stream'  
    #给附件设置一个文件名 
    att["Content-Disposition"]= 'attachment; '+'filename='+FileManger().getLastFile()+'' 
    self.msgRoot.attach(att)  
     
  def sendMail(self): 
    #发送邮件 
    self.smtp.sendmail(self.sender,self.reciver,self.msgRoot .as_string())  
   
  def quitMail(self): 
    #退出邮件服务 
    self.smtp.quit()  
   
  def run(self):          
    try: 
      self.senderLogin()  
      self.setSubject() 
      self.SendMessage() 
      self.sendMail() 
      self.quitMail() 
      print "send success...." 
    except Exception,e: 
      print e 
          
def test():  
  #创建一个FileManger实例 
  fm=FileManger()    
  sender ='wang@163.com'  
     
  receiver ='e.wang@163.com'  
     
  smtpserver ='smtp.163.com'  
   
  password =' '  
  ject= 'XQL Autom excut project' 
  filpath=fm.getLastFileWithPath() 
  try: 
    AutoMail(sender,receiver,smtpserver,password,ject,filpath) 
  except Exception,e: 
    print e 
 
if __name__=="__main__": 
  test()

完整项目源码下载链接:Python自动发送邮件的脚本源码

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python和perl实现批量对目录下电子书文件重命名的代码分享
Nov 21 Python
日常整理python执行系统命令的常见方法(全)
Oct 22 Python
Python字典循环添加一键多值的用法实例
Jan 20 Python
Django框架实现的普通登录案例【使用POST方法】
May 15 Python
详解Python3中setuptools、Pip安装教程
Jun 18 Python
Python库skimage绘制二值图像代码实例
Apr 10 Python
python plt可视化——打印特殊符号和制作图例代码
Apr 17 Python
python用Tkinter做自己的中文代码编辑器
Sep 07 Python
python基于scrapy爬取京东笔记本电脑数据并进行简单处理和分析
Apr 14 Python
python scipy 稀疏矩阵的使用说明
May 26 Python
OpenCV-Python实现图像平滑处理操作
Jun 08 Python
详解OpenCV曝光融合
Apr 29 Python
Python使用numpy模块创建数组操作示例
Jun 20 #Python
python实现自动发送邮件
Jun 20 #Python
Django实现登录随机验证码的示例代码
Jun 20 #Python
python实现Windows电脑定时关机
Jun 20 #Python
python通过微信发送邮件实现电脑关机
Jun 20 #Python
python定时关机小脚本
Jun 20 #Python
Django + Uwsgi + Nginx 实现生产环境部署的方法
Jun 20 #Python
You might like
php自定义类fsocket模拟post或get请求的方法
2015/07/31 PHP
PHP命名空间和自动加载类
2016/04/03 PHP
PHP使用 Imagick 扩展实现图片合成,圆角处理功能示例
2019/09/09 PHP
PJBlog插件 防刷新的在线播放器
2006/10/25 Javascript
JavaScript iframe的相互操作浅析
2009/10/14 Javascript
JavaScript ( (__ = !$ + $)[+$] + ({} + $)[_/_] +({} + $)[_/_] )
2011/02/25 Javascript
Jquery实现视频播放页面的关灯开灯效果
2013/05/27 Javascript
JS通过Cookie判断页面是否为首次打开
2016/02/05 Javascript
JavaScript学习笔记之取数组中最大值和最小值
2016/03/23 Javascript
JavaScript必看小技巧(必看)
2016/06/07 Javascript
js实现添加可信站点、修改activex安全设置,禁用弹出窗口阻止程序
2016/08/17 Javascript
jQuery图片轮播(二)利用构造函数和原型创建对象以实现继承
2016/12/06 Javascript
js实现导航栏中英文切换效果
2017/01/16 Javascript
深入理解Javascript中的观察者模式
2017/02/20 Javascript
使用Ajax和Jquery配合数据库实现下拉框的二级联动的示例
2018/01/25 jQuery
JS简单获取并修改input文本框内容的方法示例
2018/04/08 Javascript
详解小程序原生使用ES7 async/await语法
2018/08/06 Javascript
详解Vue.js自定义tipOnce指令用法实例
2018/12/19 Javascript
详解CommonJS和ES6模块循环加载处理的区别
2018/12/26 Javascript
ios中视频的最后一桢问题解决
2019/05/14 Javascript
JS简易计算器实例讲解
2020/06/30 Javascript
Python 实现简单的电话本功能
2015/08/09 Python
ubuntu系统下 python链接mysql数据库的方法
2017/01/09 Python
基于Python3 逗号代码 和 字符图网格(详谈)
2017/06/22 Python
Django项目中实现使用qq第三方登录功能
2019/08/13 Python
python并发编程 Process对象的其他属性方法join方法详解
2019/08/20 Python
Python帮你识破双11的套路
2019/11/11 Python
Python如何使用input函数获取输入
2020/08/06 Python
python 第三方库paramiko的常用方式
2021/02/20 Python
车间班长岗位职责
2013/11/30 职场文书
电子商务专业自我鉴定
2013/12/18 职场文书
酒店值班经理的工作职责范本
2014/02/18 职场文书
2014年学习厉行节约反对浪费思想汇报
2014/09/10 职场文书
2014年生产管理工作总结
2014/12/23 职场文书
学校学习型党组织建设心得体会
2019/06/21 职场文书
Nginx如何配置根据路径转发详解
2022/07/23 Servers