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实现把xml或xsl转换为html格式
Apr 08 Python
Python 列表理解及使用方法
Oct 27 Python
python编程线性回归代码示例
Dec 07 Python
python执行系统命令后获取返回值的几种方式集合
May 12 Python
Python I/O与进程的详细讲解
Mar 08 Python
分析运行中的 Python 进程详细解析
Jun 22 Python
Python如何使用内置库matplotlib绘制折线图
Feb 24 Python
利用Python自动化操作AutoCAD的实现
Apr 01 Python
IntelliJ 中配置 Anaconda的过程图解
Jun 01 Python
Selenium webdriver添加cookie实现过程详解
Aug 12 Python
Django展示可视化图表的多种方式
Apr 08 Python
Python Pygame实战之塔防游戏的实现
Mar 17 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排序之二维数组的按照字母排序实现代码
2011/08/13 PHP
分享PHP header函数使用教程
2013/09/05 PHP
PHP使用mysqldump命令导出数据库
2015/04/14 PHP
php使用cookie实现记住登录状态
2015/04/27 PHP
如何用PHP来实现一个动态Web服务器
2015/07/29 PHP
php魔术方法功能与用法实例分析
2016/10/19 PHP
详谈php ip2long 出现负数的原因及解决方法
2017/04/05 PHP
thinkPHP框架实现的简单计算器示例
2018/12/07 PHP
php生成短网址/短链接原理和用法实例分析
2020/05/29 PHP
基于PHP实现用户在线状态检测
2020/11/10 PHP
让 JavaScript 轻松支持函数重载 (Part 2 - 实现)
2009/08/04 Javascript
优化innerHTML操作(提高代码执行效率)
2011/08/20 Javascript
jquery获取一个元素下面相同子元素的个数代码
2014/07/31 Javascript
对比分析json及XML
2014/11/28 Javascript
JavaScript实现同时调用多个函数的方法
2015/11/09 Javascript
jQuery中serializeArray()与serialize()的区别实例分析
2015/12/09 Javascript
JavaScript深度复制(deep clone)的实现方法
2016/02/19 Javascript
Bootstrap table使用方法详细介绍
2016/12/09 Javascript
基于Vue中点击组件外关闭组件的实现方法
2018/03/06 Javascript
webpack3升级到webpack4遇到问题总结
2019/09/30 Javascript
Python 爬虫爬取指定博客的所有文章
2016/02/17 Python
Python矩阵常见运算操作实例总结
2017/09/29 Python
Django 博客实现简单的全文搜索的示例代码
2020/02/17 Python
python对 MySQL 数据库进行增删改查的脚本
2020/10/22 Python
Python基于爬虫实现全网搜索并下载音乐
2021/02/14 Python
css3中新增的样式使用示例附效果图
2014/08/19 HTML / CSS
Gretna Green中文官网:苏格兰格林小镇
2019/10/16 全球购物
双语教学实施方案
2014/03/23 职场文书
《大自然的语言》教学反思
2014/04/08 职场文书
就职演讲稿范文
2014/05/19 职场文书
计算机网络专业求职信
2014/06/05 职场文书
质量月口号
2014/06/20 职场文书
2014党委书记四风对照检查材料思想汇报
2014/09/21 职场文书
护士个人总结范文
2015/02/13 职场文书
2015年环卫处个人工作总结
2015/07/27 职场文书
Go 在 MongoDB 中常用查询与修改的操作
2021/05/07 Golang