python发送邮件和POP3、SMTP及IMA
使用python发送邮件
准备工作
1、python环境、
2、含有使用的模块smtplib,email
3、设置好对应邮箱的pop3、SMTP,一般设置方式在:设置-账户里,找到开启就行,这里要记录邮箱的授权码,一个邮箱可以有多个授权码,
代码部分
参考:https://zhuanlan.zhihu.com/p/24180606
class Mail:def __init__(self):## 136邮箱SMTPself.mail_host = "smtp.163.com" # 设置服务器:这个是163邮箱服务器,直接复制就可以self.mail_pass = "********" # 上面提到的邮箱的获取的授权码self.sender = '18****8@163.com' # 你的邮箱地址self.receivers = ['1****@163.com']def send(self):content = '你要发送的邮件内容'message = MIMEText(content, 'plain', 'utf-8')message['From'] = Header("发件人名字,可自由填写", 'utf-8')message['To'] = Header("收件人名字,可自由填写", 'utf-8')subject = '一个python的测试消息' # 发送的主题,可自由填写message['Subject'] = Header(subject, 'utf-8')try:# smtpObj = smtplib.SMTP_SSL(self.mail_host, 465) # QQ的服务器smtpObj = smtplib.SMTP(self.mail_host, 25) # 163的服务器,且不用sslsmtpObj.login(self.sender, self.mail_pass)smtpObj.sendmail(self.sender, self.receivers, message.as_string())smtpObj.quit()print('邮件发送成功')except smtplib.SMTPException as e:print('邮件发送失败')if __name__ == '__main__':mail = Mail()mail.send()POP3、SMTP及IMAP区别
参考:https://help.mail.163.com/faqDetail.do?code=d7a5dc8471cd0c0e8b4b8f4f8e49998b374173cfe9171305fa1ce630d7f67ac21b87735d7227c217
POP3是Post Office Protocol 3的简称,即邮局协议的第3个版本
SMTP 的全称是“Simple Mail Transfer Protocol”,即简单邮件传输协议。它是一组用于从源地址到目的地址传输邮件的规范,通过它来控制邮件的中转方式。
IMAP全称是Internet Mail Access Protocol,即交互式邮件存取协议,它是跟POP3类似邮件访问标准协议之一。
163和126的端口和协议一样,只是将服务器地址中的126和136不同
注意,程序中的命令要和对应的协议和端口号对应,smtplib.SMTP或smtplib.SMTP_SSL
qq邮箱
好像qq邮箱只有ssl协议的访问
SSL协议(Secure Socket Layer,安全套接层)是由网景(Netscape)公司推出的一种安全通信协议
参考:https://service.mail.qq.com/cgi-bin/help?subtype=1&&no=369&&id=28
,https://service.mail.qq.com/cgi-bin/help?subtype=1&&no=167&&id=28
总结
以上是生活随笔为你收集整理的python发送邮件和POP3、SMTP及IMA的全部内容,希望文章能够帮你解决所遇到的问题。
- 上一篇: 第17课:转型的分类(图文篇)
- 下一篇: python 提取出所有学生的序号,姓名