java自学教程|www.konglongmei.com

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

more +社区更新Forums

more +随机图赏Gallery

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

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

[复制链接]
快乐人L | 显示全部楼层 发表于: 2019-12-3 02:14:47
快乐人L 发表于: 2019-12-3 02:14:47 | 显示全部楼层 |阅读模式
查看: 77|回复: 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, 2020-7-16 00:50 , Processed in 0.094433 second(s), 28 queries .

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