千家信息网

如何浅析Python发送邮件功能

发表于:2024-11-26 作者:千家信息网编辑
千家信息网最后更新 2024年11月26日,今天就跟大家聊聊有关如何浅析Python发送邮件功能,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。之前要做一个mysql慢查询的定时发送程序,
千家信息网最后更新 2024年11月26日如何浅析Python发送邮件功能

今天就跟大家聊聊有关如何浅析Python发送邮件功能,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。

之前要做一个mysql慢查询的定时发送程序,研究了一下python 发送email的模块。python 可以smtplib 库和email 库发送邮件。

一 stmplib 的使用

初始化语法如下:

#连接到SMTP服务器

s = smtplib.SMTP('smtp.XXXX.com')

#发送邮件。msg是字符串,表示邮件内容。

s.sendmail(from_addr, to_addrs, msg)

#断开连接

s.quit()

二 email 的使用

有关MIME的一些知识

多用途互联网邮件扩展(MIME,Multipurpose Internet Mail Extensions)是一个互联网标准,它扩展了电子邮件标准,使其能够支持非ASCII字符、二进制格式附件等多种格式的邮件消息。

RFC2822定义的邮件格式中,邮件体只是单纯的ASCII编码的字符序列,MIME扩展邮件的格式,用以支持非ASCII编码的文本、非文本附件及包含多个部分(multi-part)的邮件体。

MIME消息由消息头、消息体组成,即邮件的邮件头、邮件体。中间以空行进行分隔。

1、邮件头:包括发件人(from)、收件人(to)、邮件主题(subject)、接收日期(date)、MIME版本、邮件内容类型等信息。每条信息称为一个域,由域名后加":"和信息内容构成,域的首行必须顶头写。

2、邮件体:有text/plain(纯文本)和text/html(超文本)之分,由邮件头的"content type"域指出。可以同时存在,也可以只存在一种。这就是为什么有些邮件既可以用html格式查看,又可以用文本格式查看的原因。邮件体分为多个段,称为Payload。每个段也包括段头段尾,中间以空行分隔。

multipart类型有3种:

multipart/mixed

multipart/related

multipart/alternative。

邮件里添加附件要定义multipart/mixed段:

如果纯文本超文本共存,则要定义multipart/alternative,

如存在内嵌资源,要定义multipart/related。

3、附件(attach)。发送邮件时,可以将本机的文件一起发送。附件可以有0个或多个,只要附件的总大小,不超过邮件服务器所声明的最大容量。

class email.mime.text.MIMEText(_text[, _subtype[, _charset]])

用于生成MIME对象的主体文本:_text指定邮件内容,_subtype指定邮件类型,_charset指定编码。

class email.mime.multipart.MIMEMultipart()

用于生成包含多个部分的邮件体的MIME对象

三 简单例子介绍:

一个发送至多人的例子:

#!/usr/bin/evn python

import time

import smtplib

from email.mime.text import MIMEText

mail_body='hello, this is the mail content from python and it is sended to two emails !'

fromer='qilong.yangql@gmail.com'

##注意sender 一定要是数组,否则接受到邮件显示收件人是被";" 截断的字符串

sender=['5XXX2@qq.com','yangXXX@163.com']

msg=MIMEText(mail_body)

msg['Subject']='hello world '

msg['From']=fromer

msg['To']=';'.join(sender)

msg['date']=time.strftime('%a, %d %b %Y %H:%M:%S %z')

s=smtplib.SMTP('smtp.XXXXX.com')

s.sendmail(fromer,sender,msg.as_string())

s.quit()

看完上述内容,你们对如何浅析Python发送邮件功能有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注行业资讯频道,感谢大家的支持。

邮件 内容 文本 格式 附件 多个 字符 消息 信息 类型 编码 支持 功能 互联网 例子 字符串 对象 收件人 服务器 标准 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 教学管理数据库设计的任务 奉贤区国际网络技术服务常见问题 支持服务器登录的我的世界启动器 crm客户管理服务器 监控数据传回服务器怎么设置 常用的网络安全技术包括8种 战地1和怎么解决服务器 对数据库安全的认知 饥荒联机版关闭服务器指令 服务器租赁一般多少年 sap数据库集群安全吗 恒易达直销软件开发公司 光遇合服前后土豆服务器表情包 智能手机显示未连接到服务器 网络安全管理办法征求意见 我的世界如何挂机不被服务器检测 网络技术招聘模板 电脑连接手机导出数据库 江苏服务器工控机厂家 网庭网络技术有限公司招聘 铜陵市社管平台公共基础数据库 c 自动同步数据库 晋中软件开发制作 警察网络安全保密心得体会 湖北生活教育网络安全系统 哪些数据库可以获得全文 控制网络技术电子书 数据库表结构对比工具 南安数据库恢复 c 数据库云
0