如何利用python发送邮件


Posted in Python onSeptember 26, 2020

一、zmial发送邮件

zmial是第三方库,需进行安装

pip install zmail

完成后,来给发一封邮件

subject:标题
content_text:内容

import zmail
 server = zmail.server('发件人邮箱地址','授权码')
 
 server.send_mail('收件人邮箱地址',{'subject':'Hello!','content_text':'By zmail.'})

二、smtplib发送邮件

import smtplib
from email.mime.text import MIMEText
#--------发件相关参数--------
smtpserver="smtp.qq.com"  #连接服务器
port = 465           #端口
sender = "741841851@qq.com"#账号
psw = "xxxxx"#密码 授权码
receiver="741841851@qq.com"#接收人

#--------编辑邮件内容--------

subject="qq邮件主题"
body= '<p>这个是发送的qq邮件</p>'
msg = MIMEText(body,'html','utf-8')
msg['from']=sender
msg['to']='741841851@qq.com'
msg['subject']=subject

#-----------test_email-------
smtp = smtplib.SMTP_SSL(smtpserver,port)#连接服务器
smtp.login(sender,psw)#登录
smtp.sendmail(sender,receiver,msg.as_string())#发送邮件
smtp.quit()

三、发送带附件的邮件

import smtplib
from email.mime.text import MIMEText
from email.mime.multipart import MIMEMultipart
import os

smtpserver='smtp.qq.com'
port =465
sender='741841851@qq.com'
psw = 'xxxx'
recevier = "741841851@qq.com"

filenamepath = os.path.join(os.path.dirname(os.path.realpath(__file__)),'ceshi.html')

with open(filenamepath,'rb') as f:
  mail_body=f.read().decode('utf-8')

msg = MIMEMultipart()
msg['from']=sender#发件人
msg['to']=recevier#收件人
msg['subject']='这是我的主题99'#主题

# 正文
body = MIMEText(mail_body,'html','utf-8')
msg.attach(body)
#附件
att = MIMEText(mail_body,'base64','gbk')#用utf-8会出现乱码
att['Content-Type']='application/octet-stream'
att['Content-Disposition']='attachment;filename="test_report.html"'
msg.attach(att)

####发送邮件
try:
  smtp = smtplib.SMTP()
  smtp.connect(smtpserver)#连接服务器
  smtp.login(sender,psw)#登录
except:
  smtp = smtplib.SMTP_SSL(smtpserver,port)
  smtp.login(sender,psw)#登录

smtp.sendmail(sender,recevier,msg.as_string())#发送邮件
smtp.quit()

以上就是如何利用python发送邮件的详细内容,更多关于python 发送邮件的资料请关注三水点靠木其它相关文章!

Python 相关文章推荐
python中将字典转换成其json字符串
Jul 16 Python
Python使用bs4获取58同城城市分类的方法
Jul 08 Python
Python实现按中文排序的方法示例
Apr 25 Python
在python中使用with打开多个文件的方法
Jan 07 Python
python sklearn库实现简单逻辑回归的实例代码
Jul 01 Python
python logging 日志的级别调整方式
Feb 21 Python
Python unittest框架操作实例解析
Apr 13 Python
Python matplotlib实时画图案例
Apr 23 Python
python获取linux系统信息的三种方法
Oct 14 Python
python自动化调用百度api解决验证码
Apr 13 Python
python实现股票历史数据可视化分析案例
Jun 10 Python
python之json文件转xml文件案例讲解
Aug 07 Python
Python 测试框架unittest和pytest的优劣
Sep 26 #Python
浅析python函数式编程
Sep 26 #Python
python用Configobj模块读取配置文件
Sep 26 #Python
Python内存泄漏和内存溢出的解决方案
Sep 26 #Python
python 两种方法修改文件的创建时间、修改时间、访问时间
Sep 26 #Python
如何使用Python调整图像大小
Sep 26 #Python
小白教你PyCharm从下载到安装再到科学使用PyCharm2020最新激活码
Sep 25 #Python
You might like
PHP的伪随机数与真随机数详解
2015/05/27 PHP
PHP实现的增强性mhash函数
2015/05/27 PHP
php实现编辑和保存文件的方法
2015/07/20 PHP
yii2分页之实现跳转到具体某页的实例代码
2016/06/02 PHP
根据分辨率不同,调用不同的css文件
2006/07/07 Javascript
jQuery获取文本节点之 text()/val()/html() 方法区别
2011/03/01 Javascript
jquery ui对话框实例代码
2013/05/10 Javascript
页面实时更新时间的JS实例代码
2013/12/18 Javascript
JS常用字符串处理方法应用总结
2014/05/22 Javascript
5个可以帮你理解JavaScript核心闭包和作用域的小例子
2014/10/08 Javascript
jQuery中 delegate使用的问题
2015/07/03 Javascript
JS制作图形验证码实现代码
2020/10/19 Javascript
微信小程序 网络API Websocket详解
2016/11/09 Javascript
纯js实现悬浮按钮组件
2016/12/17 Javascript
详解Vue使用命令行搭建单页面应用
2017/05/24 Javascript
jQuery.Form实现Ajax上传文件同时设置headers的方法
2017/06/26 jQuery
JS 学习总结之正则表达式的懒惰性和贪婪性
2017/07/03 Javascript
node.js学习之事件模块Events的使用示例
2017/09/28 Javascript
详解让sublime text3支持Vue语法高亮显示的示例
2017/09/29 Javascript
[01:06]DOTA2小知识课堂 Ep.01 TP出门不要忘记帮队友灌瓶哦
2019/12/05 DOTA
Python 基础教程之包和类的用法
2017/02/23 Python
python中pandas.DataFrame的简单操作方法(创建、索引、增添与删除)
2017/03/12 Python
简述:我为什么选择Python而不是Matlab和R语言
2017/11/14 Python
python实现登录密码重置简易操作代码
2019/08/14 Python
如何在mac环境中用python处理protobuf
2019/12/25 Python
CSS3颜色值RGBA与渐变色使用介绍
2020/03/06 HTML / CSS
世界上最大的在线汽车租赁预订平台:Rentalcars.com(支持中文)
2018/10/12 全球购物
采购部岗位职责
2013/11/24 职场文书
科长竞聘演讲稿
2014/05/16 职场文书
我们的节日春节活动方案
2014/08/22 职场文书
毕业证代领委托书
2014/09/26 职场文书
党员批评与自我批评
2014/10/15 职场文书
工会2014法制宣传日活动总结
2014/11/01 职场文书
2015年乡镇纪委工作总结
2015/05/26 职场文书
毕业生入职感言
2015/07/31 职场文书
关于环保的广播稿
2015/12/17 职场文书