网站首页 美食营养 游戏数码 手工爱好 生活家居 健康养生 运动户外 职场理财 情感交际 母婴教育 生活知识 知识问答

如何使用Python发送邮件

时间:2024-11-03 07:46:39

1、首先在进入正题易七淄苷之前,我们需要对一些基本内容有所了解:常用的电子邮件协议有SMTP、POP3、IMAP4,它们都隶属于TCP/IP协议簇,默认状态下,分别墩伛荨矧通过TCP端口25、110和143建立连接。Python内置对SMTP的支持,该协议支持发送纯文本邮件、HTML邮件以及带附件的邮件,Python的smtplib,email模块都支持该协议。下面我们开始进入正题:

如何使用Python发送邮件

2、第一步,首先你要准备两个邮箱帐号,一个是常用的(接收端),另一个可以注册网易163邮箱或者foxmail邮箱也可(发送端),本次我使用两个QQ邮箱进行演示。首先在邮箱的设置-账户中开启SMTP功能

如何使用Python发送邮件

3、第二步,点击生成授权码,按照弹出窗口的提示发送短信,发送后单击我已发送按钮。将生成的授权码复制下来以备接下来使用。

如何使用Python发送邮件如何使用Python发送邮件

4、第三步,在顺利完成上述步骤后,我们来编辑代码:from email.header import Headerfrom email.mi罪焐芡拂me.text import MIMETextfrom email.utils import parseaddr,formataddrimport smtplibdef _format_addr(s): name,addr = parseaddr(s) return formataddr((Header(name,'utf-8').encode(),addr))#发件人地址from_addr = '10******10@qq.com'#密码刚才复制的邮箱的授权码password = 'u*******************g'#收件人地址to_addr = '10********28@qq.com'#邮箱服务器地址smtp_server = 'smtp.qq.com'#设置邮件信息msg = MIMEText('Python爬虫运行异常,异常信息为遇到HTTP 403','plain','utf-8')msg['From'] = _format_addr('Python爬虫一号<%s>'%from_addr)msg['To'] = _format_addr('管理员<%s>'%to_addr)msg['Subject'] = Header('一号爬虫运行异常.','utf-8').encode()#发送邮件server = smtplib.SMTP_SSL(smtp_server,465)#打印出和SMTP服务器交互的所有信息server.set_debuglevel(1)#登录SMTP服务器server.login(from_addr,password)#sendmail():发送邮件,由于可以一次发给多个人,所以传入一个list邮件正文是一个str,as_string()把MIMEText对象变成str。server.sendmail(from_addr,to_addr,msg.as_string())server.quit()print('邮件发送成功!')

如何使用Python发送邮件如何使用Python发送邮件

5、第五步,登录接收端邮箱查看是否发送成功:

如何使用Python发送邮件

6、如果能成功收到邮件的话就说明大功告成了,下次在进行爬取工作时就不用在眼巴巴的盯着了。

© 2026 小知经验
信息来自网络 所有数据仅供参考
有疑问请联系站长 site.kefu@gmail.com