java自学教程|www.konglongmei.com

作者: 快乐人L
查看: 39|回复: 0

more +社区更新Forums

more +随机图赏Gallery

疯狂Java讲义(第4版) PDF 电子书 百度云 网盘下载疯狂Java讲义(第4版) PDF 电子书 百度云 网盘下载
价值825元 牛客算法通关课程视频教程 第六期 百度云 网盘下载价值825元 牛客算法通关课程视频教程 第六期 百度云 网盘下载
Spring 5核心原理与30个类手写实战 PDF 电子书 百度云 网盘下载Spring 5核心原理与30个类手写实战 PDF 电子书 百度云 网盘下载
Spring 5核心原理与30个类手写实战+Spring Boot编程思想核心篇pdfSpring 5核心原理与30个类手写实战+Spring Boot编程思想核心篇pdf
Spring Boot编程思想核心篇+Spring 5核心原理与30个类手写实战pdfSpring Boot编程思想核心篇+Spring 5核心原理与30个类手写实战pdf
java电子书]微服务架构设计模式 PDF 电子书 百度云 网盘下载java电子书]微服务架构设计模式 PDF 电子书 百度云 网盘下载

[技术知识] Java连载55-Mail编程

[技术知识] Java连载55-Mail编程

[复制链接]
快乐人L | 显示全部楼层 发表于: 7 天前
快乐人L 发表于: 7 天前 | 显示全部楼层 |阅读模式
查看: 39|回复: 0
一、电子邮件的历史
1.起源:
1969 Lenoard K. 教授发给同事的“LO”
1971 美国国防部自主的阿帕网(Arpanet)的通讯机制
通讯地址里用@
1987年中国的第一份电子邮件
“Across the Great Wall we can reach every corner in the world"
2.管理程序
Euroda使邮件普及,Netscape,outlook,formail,后来居上;Hotmail使用浏览器发送邮件
3.​参考资料:https://docs.python.org/3/library/email.mime.html
4.邮件工作流程
MUA(MailUserAgent)邮件用户代理
MTA(MailTransferAgent)邮件传输代理
MDA(MailDeliveryAgent)邮件投递代理
laoshi@qq.com, 老师,北京海淀
xuesheng@sina.com, 学生,上海静安区
​流程:
(1)MUA-MTA ,邮件已经在服务器上了
(2)qq MTA-.........-sina MTA,邮件已经在新浪的服务器上
(3)sina MTA-sina MDA,此时邮件已经在你的邮箱上了
(4)sina MDA - MUA (Foxmail/Outlook),邮件下载到本地电脑
​编写程序的过程:
(1)​发送:MUA-MTA with SMTP(SimpleMailTransferProtocal)包含MTA-MTA
(2)接受​:MDA-MUA with POP3 and IMAP:PostOfficeProtocal v3 and InternetMessageAcessProtocal v4
(3)准备工作:注册邮箱(以qq邮箱为例),第三方邮箱需要设置,以qq邮箱为例​:进入设置中心,取得授权码

二、敲代码
1.SMTP协议负责发送邮件
(1)使用email模块构建邮件
(2)使用smtplib模块发送邮件
  1. #导入相应的包import smtplibfrom email.mime.text import MIMEText#MIMEText三个主要参数:1.邮件内容;2.MIME子类型,在此案例中我们用plain表示text类型;3.邮件编码格式msg = MIMEText("hello ,I am ruigege","plain","utf-8")#发送email地址,此处地址直接使用我的qq邮箱,密码一般许哟啊临时输入,此处偷懒from_addr = "1215217867@qq.con"#此处密码是经过申请设置之后的授权码,不是自己的qq号码密码,相当于github中的privateTokenfrom_pwd = ""#收件人信息#此处使用qq邮箱,我给自己发送吧,就不打扰别人了to_addr = "1215217867@qq.com"#输入SMTP服务器地址#此处根据不同的邮件服务商有不同的值#现在基本任何一家邮件服务商,如果采用第三方收发邮件,都需要开启授权选项#腾讯qq邮箱的smtp地址是smtp.qq.comsmtp_srv = "smtp.qq.com"try:    #两个参数:第一个是服务器地址,但一定是bytes格式,所以需要编码;第二个参数是服务器的接受访问端口    srv = smtplib.SMTP_SSL(smtp_srv.encode(),465)#SMTP协议默认端口25    #登录邮箱发送    srv.login(from_addr,from_pwd)    #发送邮件:三个参数1.发送地址;2.接受地址,必须是List形式;3.发送内容,作为字符串进行发送    srv.sendmail(from_addr,[to_addr],msg.as_string())    srv.quit()except Exception as w:    print(w)
复制代码
2.POP3协议用于接受邮件
五、源码
D55_1_MailProgramme.py
https://github.com/ruigege66/Python_learning/blob/master/D55_1_MailProgramme.py
2.CSDN:https://blog.csdn.net/weixin_44630050(心悦君兮君不知-睿)
3.博客园:https://www.cnblogs.com/ruigege0000/
4.欢迎关注微信公众号:傅里叶变换,个人公众号,仅用于学习交流,后台回复”礼包“,获取大数据学习资料



鲁班 Java架构师VIP课程一期共89G视频教程 luban it教程下载:http://www.77cxw.com/download/78
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|网站地图|java自学教程|www.konglongmei.com

GMT+8, 2019-12-10 09:47 , Processed in 0.149087 second(s), 47 queries .

快速回复 返回顶部 返回列表