关于Python基于SMTP协议发送邮件

本文介绍了使用Python的smtplib和email模块基于SMTP协议发送邮件的详细过程,包括构造邮件、设置发件人和收件人、自定义显示名称、发送纯文本和HTML邮件以及添加附件的方法。通过示例代码展示了如何发送带有中文名称的邮件和图片附件。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

#Python基于smtp协议发送邮件

首先介绍下电子邮件的基本流程:

生气发件人 -> MUA -> MTA -> MTA -> 若干个MTA -> MDA <- MUA <- 收件人

生气MUA:Mail User Agent 邮件用户代理

生气MTA:Mail Transfer Agent 邮件传输代理

生气MDA:Mail Delivery Agent 邮件投递代理

发邮件时,MUA和MTA使用的协议就是SMTP:Simple Mail Transfer Protocol,后面的MTA到另一个MTA也是用SMTP协议

收邮件时,MUA和MDA使用的协议有两种:

POP:Post Office Protocol,目前版本是3,俗称POP3;

IMAP:Internet Message Access Protocol,目前版本是4,优点是不但能取邮件,还可以直接操作MDA上存储的邮件,比如从收件

箱移到垃圾箱,等等。

今天主要介绍的是基于SMTP的邮件发送:

SMTP是发送邮件的协议,Python内置对SMTP的支持,可以发送纯文本邮件、HTML邮件以及带附件的邮件。

Python对SMTP支持有smtplib和email两个模块,email负责构造邮件,smtplib负责发送邮件。  
生气简单的发一个邮件:
from email.mime.text import MIMEText

import smtplib

msg = MIMEText('you are buautiful','plain','utf-8')

#第一个参数是邮件正文,第二个传plain表示纯文本,第三个utf-8保证了多语言的兼容性

from_addr = input('From:') #输入发件人地址  

password = input('password:')           #输入客户端授权密码

to_addr = input('To:')                #输入收件人地址

smtp_server = input('Smtp_server:')

#输入收件

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值