使用python的email、smtplib、poplib模块收发邮件
作者:互联网
使用python的email、smtplib、poplib模块收发邮件
一封电子邮件的旅程是:
MUA:Mail User Agent——邮件用户代理。(即类似Outlook的电子邮件软件)
MTA:Mail Transfer Agent——邮件传输代理,就是那些Email服务提供商,比如网易、新浪等等。
MDA:Mail Delivery Agent——邮件投递代理。Email服务提供商的某个服务器
发件人 -> MUA -> MTA -> MTA -> 若干个MTA -> MDA <- MUA <- 收件人
要编写程序来发送和接收邮件,本质上就是:
编写MUA把邮件发到MTA;
编写MUA从MDA上收邮件。
发邮件时,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上存储的邮件,比如从收件箱移到垃圾箱,等等。
构造一个邮件对象就是一个Messag对象,如果构造一个MIMEText对象,就表示一个文本邮件对象,如果构造一个MIMEImage对象,就表示一个作为附件的图片,要把多个对象组合起来,就用MIMEMultipart对象,而MIMEBase可以表示任何对象。它们的继承关系如下:
发送邮件
接受邮件
标签:python,MDA,对象,MUA,Mail,smtplib,MTA,poplib,邮件 来源: https://blog.csdn.net/sinat_38682860/article/details/89924293