用python实现邮件收发

本文介绍了如何使用Python进行邮件的收发。通过Python的smtplib和email库,利用SMTP协议登录邮箱,并讲解了获取QQ邮箱授权码的方法。代码示例展示了登录邮箱并发送邮件的流程。
摘要由CSDN通过智能技术生成

项目环境

语言:Python
编辑器:Pycharm
库:smtplib、email

使用python登录邮箱

python登录邮箱需要定义邮件的传输协议,一般的邮件传输协议是 SMTP,QQ 邮箱是 smtp.qq.com,端口默认为 25。用 login 方法登录邮箱,第一个参数是登录账号,第二个参数不是邮箱的登录密码,而是邮箱的授权码,在邮箱的设置中查看,以下是QQ 邮箱查看方法,其他邮箱查看方法类似。

QQ邮箱授权码查看、复制
在这里插入图片描述登录成功后再用 sendmail 方法发送邮件,发送完后退出邮件。
源代码:`

import smtplib
from email.mime.text import MIMEText
from email.utils import formataddr
from email.header import Header
my_sender = 'xxxxxx@qq.com'     # 发件人邮箱账号
my_user = 'xxxxxxx@qq.com'       # 收件人邮箱账号

def sendMail(mail_title, mail_content):
    try:
        '''发送邮件'''
        msg = MIMEText(mail_content, "plain", 'utf-8')        # 把发送文本用 MIMEText 方法处理成中文编码,发送邮件内容
        msg["Subject"] = Header(mail_title, 'utf-8')            # 发送邮件主题/标题
        msg["From"] = formataddr(['xxx', my_sender])             # 邮件发送方
        msg["To"] = formataddr(['xxx', my_user])             # 邮件接收方
        s = smtplib.SMTP("smtp.qq.com", 25)        # 邮箱的传输协议,端口默认25
        s.login(my_sender, 'xxx授权码xxx')     # 登录邮箱,这里的第二个参数为qq邮箱授权码,不要填你的登录密码
        s.sendmail(my_sender, [my_user, ], msg.as_string())  # 发送方,接收方,发送消息
        s.quit()               # 退出邮箱
        print("邮件发送成功!")
    except Exception:
        print("邮件发送失败~~")
        
if __name__ == '__main__':
    mail_title = '来自Python的邮件'
    mail_content = '我就是试试程序'
    sendMail(mail_title, mail_content)

`

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值