栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

python发送邮件

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

python发送邮件

直接上代码吧

#  倒入库,发送邮件基本的四个库
import  smtplib # 内置库,不需要pip
from email.mime.multipart import MIMEMultipart # 邮件的内容,邮件收件人,邮件的相关设置
from email.header import Header  # 专门构建邮件标题的,这样做,可以支持标题中文
from email.mime.text import MIMEText # 构建邮件头信息,包括发件人,接收人,标题等
from email.mime.image import MIMEImage # 发送图片附件用到的包

import datetime
第一步:连接邮箱服务器,登录邮箱
email_connect = smtplib.SMTP_SSL('smtp.qq.com', 465)  # 连接邮箱服务器,第一个参数为邮箱连接地址'smtp.邮箱名.com',第二个参数是端口号, 用QQ邮箱最稳妥,outlook微软的邮箱,不太会搞
email_connect.login('905414357@qq.com','授权码或者密码') # 利用第一步创建的连接名,去连接对象.login(账号,密码)。相当于在邮箱的页面登录你自己的账号。 QQ的密码就是授权码,其他的邮箱不太清楚
第二步:准备数据
# 创建邮件对象:from email.mime.multipart import MIMEMultipart 邮件的内容,邮件收件人,邮件的相关设置,包括发件人,接收人,标题等
send_content = MIMEMultipart() # 真正发出去的东西,包括头部的标题内容,头部的内容。代码的角度就是调用了MIMEMultipart的类,可以随意使用里面的方法

# 设置邮件主题 from email.header import Header  专门构建邮件标题的,这样做,可以支持标题中文
# 调用send_content的方法 来构建邮件的头部的内容
send_content['Subject'] = Header('TJU '+str(datetime.date.today())+' 水果日报','utf-8').encode() # 邮件的标题内容
send_content['From'] = 'TJU百亿团队 ' # 设置邮件发送人
send_content['To'] = 'HongYe_Fan@outlook.com' # 设置邮件接受人,如果是很多人,那么就是'邮箱1:邮箱2;邮箱3;.......邮箱n'

# from email.mime.text import MIMEText # 构建邮件内容信息
# 普通文本:MIMEText(文字内容,文本类型,编码方式)
# 文本类型 - plain(普通文件), html(超链接),base64(二进制文件)

# ========================文本内容========================
# text = MIMEText('林瑞敏','plain','utf-8')
# send_content.attach(text) # 与文本的内容相连接,就构成整个邮件的发生页面,以及发送内容

# ========================html内容========================
content = """

 我是正文的大标题 
 我是正文的副标题 

我是邮件正文段落文字

点击跳转 """ # 在这个里面写html文字 html_text = MIMEText(content,'html','utf-8') send_content.attach(html_text) # ========================发送图片内容======================== # 发送图片内容,需要使用HTML内容来发送 #1.准备图片 image_data = open('本地的文件地址','rb').read() image = MIMEImage(image_data) image.add_header('Content-ID ','') content = """

这是一条发送图片的的邮件 """ html_text = MIMEText(content,'html','utf-8') send_content.attach(html_text) # ========================发送图片附件内容======================== # 图片附件内容,其实就是从本地读取图片,将图片内容转为二进制 image_data = open('文件的地址','rb').read() image = MIMEImage(image_data) image['Content-Disposition'] = 'attachment; filename ="名字内容"' # 设置附件名,注意名字不要用成中文 send_content.attach(image) # 添加到邮件内容当中去 ========================发送文件附件内容======================== # 准备附件 content1 = open('文件的地址','rb').read() file_content = MIMEText(content1,'base64','utf-8') # 必须写base64,这个是二进制的编码形式。 file_content['Content-Disposition'] = 'attachment; filename ="名字内容"' # 设置附件名,注意名字不要用成中文 send_content.attach(image) # 添加到邮件内容当中去

第三步:发送邮件
# 连接对象,sendmail
email_connect.sendmail('905414357@qq.com','905414357@qq.com',send_content.as_string()) # 发送人,收件人,以字符串的方法发送出去
email_connect.close() # 关闭邮箱
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/674959.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号