python 发送邮件 163_Python和163邮箱授权码发送邮件的分析与实现(代码)

本篇文章给大家带来的内容是关于Python和163邮箱授权码发送邮件的分析与实现(代码),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。

背景

前段时间写了个自动打卡的脚本,但是脚本不够完善,我需要知道,打卡到底成没成功,因此,我想到了用Python执行完代码之后,再执行一段发送邮件的代码。需求开始明确了,就开始分析和写代码实现吧。

分析

SMTP(Simple Mail Transfer Protocol),即简单邮件传输协议,它是一组用于由源地址到目的地址传送邮件的规则,由它来控制信件的中转方式。

python的smtplib提供了一种很方便的途径发送电子邮件。它对smtp协议进行了简单的封装。

代码实现import smtplib

from email.mime.text import MIMEText

# 引入smtplib和MIMEText

from time import sleep

def sentemail():

host = 'smtp.163.com'

# 设置发件服务器地址

port = 465

# 设置发件服务器端口号。注意,这里有SSL和非SSL两种形式,现在一般是SSL方式

sender = 'a419914150@163.com'

# 设置发件邮箱,一定要自己注册的邮箱

pwd = 'SGJEKFBFK322'

# 设置发件邮箱的授权码密码,根据163邮箱提示,登录第三方邮件客户端需要授权码

receiver = '419914150@qq.com'

# 设置邮件接收人,可以是QQ邮箱

body = '

你已成功打卡

zhongfs

'

# 设置邮件正文,这里是支持HTML的

msg = MIMEText(body, 'html')

# 设置正文为符合邮件格式的HTML内容

msg['subject'] = '打卡通知'

# 设置邮件标题

msg['from'] = sender

# 设置发送人

msg['to'] = receiver

# 设置接收人

try:

s = smtplib.SMTP_SSL(host, port)

# 注意!如果是使用SSL端口,这里就要改为SMTP_SSL

s.login(sender, pwd)

# 登陆邮箱

s.sendmail(sender, receiver, msg.as_string())

# 发送邮件!

print ('Done.sent email success')

except smtplib.SMTPException:

print ('Error.sent email fail')

if __name__ == '__main__':

sentemail()

执行情况

程序运行截图:

收到邮件截图:

总结

本文简单介绍了如何利用python通过163邮箱发送邮件,并附上了代码。由于比较简单,不再过多阐述。已上传github代码,链接如下:

https://github.com/rootzhongfengshan/python_practical/blob/master/SentMail/SentMail.py


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部