python自动发送邮件脚本
作者:坏蛋是我 发布时间:2023-01-24 07:56:28
标签:python,发送邮件
本文实例为大家分享了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自动发送邮件的脚本源码
来源:https://blog.csdn.net/henni_719/article/details/60580593


猜你喜欢
- 目录1. python爬取网易财经不同板块股票数据目标网址:爬虫思路:爬虫代码:2. excel树状图2.1. 简单的树状图2.2. 带有增
- 优秀的Stoyan Stefanov在他的新书中(《Javascript Patterns》)介绍了很多编写高质量代码的技巧,比如避免使用全
- 或者说有一条命令 hostname [string],当string是不包含2950时,是true,包含2950时是false。使用Exce
- 一、把MySql.Data.dll放到BIN目录下。 二、这是aspx.cs的全部源码,修改参数直接运行即可! &nbs
- 什么是可变/不可变对象不可变对象,该对象所指向的内存中的值不能被改变。当改变某个变量时候,由于其所指的值不能被改变,相当于把原来的值复制一份
- <html> <head> <title>Login</title> <meta ht
- dssaa 问:求一个如奥运倒计时牌那样显示的倒计时程序突然想到这样的一个小程序,不知道能不能做,比如我要在我的主页上挂一个页面,上面只显示
- 下面是python中的一个函数计算代码:loops=25000000from math import*a=range(1,loops)def
- 本文主要是关于matplotlib的一些基本用法。Demoimport matplotlib.pyplot as pltimport num
- PHP的类是单一继承模式,也就是每个类只能继承一个父类(基类)。但有时需要引入更多通用(共用)的方法,同时这些方法又不适合集成到基类。那么这
- 今天主要给大家介绍如何用pyecharts画各种漂亮的数学图形一、基本极坐标图说简单点,基本极坐标图就是圆形的散点图(柱状图或折线图),代码
- 前言在早期学Python的时候,买了一本《Python编程快速上手-让繁琐工作自动化》。这本书里面讲得都比较基础,不过却非常的实用。估计从书
- 上一篇自动在Windows中运行Python脚本并定时触发功能实现传送门链接运行Python脚本:.bat文件在Windows中,.bat文
- 什么是树表查询?借助具有特殊性质的树数据结构进行关键字查找。本文所涉及到的特殊结构性质的树包括:二叉排序树。 平衡二叉树。使用上述树结构存储
- 1.题目2.代码#共有n种图案的印章,每种图案的出现概率相同。小A买了m张印章,求小A集齐n种印章的概率。n,m=map(int,input
- 传输层安全协议(Transport Layer Security,缩写:TLS),及其前身安全套接层(Secure Sockets Laye
- 实例如下:# bytes object b = b"example" # str object s = "ex
- 本文实例讲述了Python及Django框架生成二维码的方法。分享给大家供大家参考,具体如下:一、包的安装和简单使用1.1 用Python来
- 本文实例讲述了JS+HTML5 canvas绘制验证码。分享给大家供大家参考,具体如下:css样式:<style>body{ &
- 前言:大家好啊!又是我TUSTer_! python里有自带的库math,cmath,和函数pow来开根号。下边让我带你了解他们