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之有容乃大的list(3)
Sep 15 Python
详解Python3操作Mongodb简明易懂教程
May 25 Python
python实现rsa加密实例详解
Jul 19 Python
对python3中pathlib库的Path类的使用详解
Oct 14 Python
python单线程文件传输的实例(C/S)
Feb 13 Python
pandas实现将dataframe满足某一条件的值选出
Jun 12 Python
Python语法分析之字符串格式化
Jun 13 Python
python实现DEM数据的阴影生成的方法
Jul 23 Python
python实现飞机大战项目
Mar 11 Python
Python使用graphviz画流程图过程解析
Mar 31 Python
python try...finally...的实现方法
Nov 25 Python
python 6种方法实现单例模式
Dec 15 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
PHP4实际应用经验篇(1)
2006/10/09 PHP
PHP计算2点经纬度之间的距离代码
2013/08/12 PHP
浅析php创建者模式
2014/11/25 PHP
php实现多维数组中每个单元值(数字)翻倍的方法
2015/02/16 PHP
PHP获取某个月最大天数(最后一天)的方法
2015/07/29 PHP
PHP汉字转换拼音的函数代码
2015/12/30 PHP
PHP验证码生成原理和实现
2016/01/24 PHP
PHP下载文件的函数实例代码
2016/05/18 PHP
laravel多条件查询方法(and,or嵌套查询)
2019/10/09 PHP
通过正则表达式实现表单验证是否为中文
2014/02/18 Javascript
jquery+ajax实现跨域请求的方法
2015/01/20 Javascript
JS+CSS实现大气的黑色首页导航菜单效果代码
2015/09/10 Javascript
JavaScript中实现无缝滚动、分享到侧边栏实例代码
2016/04/06 Javascript
基于Jquery插件实现跨域异步上传文件功能
2016/04/26 Javascript
jquery validation验证表单插件
2017/01/07 Javascript
Angular实现较为复杂的表格过滤,删除功能示例
2017/12/23 Javascript
详解Angular5/Angular6项目如何添加热更新(HMR)功能
2018/10/10 Javascript
8个有意思的JavaScript面试题
2019/07/30 Javascript
vue设置默认首页的操作
2020/08/12 Javascript
浅谈Python2.6和Python3.0中八进制数字表示的区别
2017/04/28 Python
Pyspider中给爬虫伪造随机请求头的实例
2018/05/07 Python
python 找出list中最大或者最小几个数的索引方法
2018/10/30 Python
Python3.5 Pandas模块之DataFrame用法实例分析
2019/04/23 Python
python 抓包保存为pcap文件并解析的实例
2019/07/23 Python
使用OpenCV-python3实现滑动条更新图像的Canny边缘检测功能
2019/12/12 Python
Python threading模块condition原理及运行流程详解
2020/10/05 Python
python dir函数快速掌握用法技巧
2020/12/09 Python
基于DOM+CSS3实现OrgChart组织结构图插件
2016/03/02 HTML / CSS
css3遮罩层镂空效果的多种实现方法
2020/05/11 HTML / CSS
美国第一香水网站:Perfume.com
2017/01/23 全球购物
Maison Lab荷兰:名牌Outlet购物
2018/08/10 全球购物
生物技术专业毕业生求职信范文
2013/12/14 职场文书
幼儿园数学教学反思
2014/02/02 职场文书
化学系大学生自荐信范文
2014/03/01 职场文书
JavaScript控制台的更多功能
2021/04/28 Javascript
opencv用VS2013调试时用Image Watch插件查看图片
2021/07/26 Python