Python 3.x 使用QQ邮箱进行邮件的发送

在python 3.x中,email,smtplib模块可以直接引用
若想将邮件发送给多人,可以讲下面的代码作为一个方法体,接收地址为传入参数,在外部经过自己的逻辑判断后,多次传入即可。

在python爬虫中的邮件,主要起到的就是提醒的作用。可以让运维或爬虫撰写人员,即时收到爬虫运行故障的信息,减少了在最终数据成型后才发现数据存在异常,然后再一个个排除的问题。

希望这篇文章对您有帮助。(若想直接使用,直接修改地址和授权码即可)

# 作者:Voccoo
# 撰写时间:2018年8月25日
# Python版本:3.6.5
# CSDN:https://blog.csdn.net/qq_38044574
#
from email.header import Header
from email.mime.text import MIMEText
from email.utils import parseaddr, formataddr
import smtplib

# 发件人地址
from_addr = '发件人地址@qq.com'
# 邮箱密码(此处为开启smpt后给出的授权码,而不是登录面膜)
#开启的方式在qq邮箱,设置-》账户的中间偏下位置(账户安全下一栏中),选择开启
password = '授权码'
# 收件人地址
to_addr = '收件人地址可以任意'
# qq邮箱服务器地址
smtp_server = 'smtp.qq.com'


# 调用parseaddr,将传入的参数
def _format_addr(s):
    name, addr = parseaddr(s)
    # print(name)
    # print(addr)
    # 打印出parseaddr方法返回的值,
    # 由此可以看到将在formataddr中传入的值的具体信息
    # xx爬虫出现异常
    # 发件人 @ qq.com
    # 管理员
    # 收件人 @ qq.com
    return formataddr((Header(name, 'utf-8').encode(), addr))


# 设置邮件信息
# 设置发送的文本内容
#这里第二个参数为plain,指的是发送的事纯文本
#若想发送网页信息,那就在第一个参数中传入网页信息,把第二个参数设置成html就可以了
msg = MIMEText('Python爬虫程序出现异常......', 'plain', 'utf-8')
# 设置发送人
msg['From'] = _format_addr('xx爬虫出现异常 <%s> ' % from_addr)
# 设置接收人
msg['To'] = _format_addr('管理员 <%s> ' % to_addr)
# 设置邮件标题
msg['Subject'] = Header('xx爬虫运行状态', 'UTF-8').encode()

# 发送邮件
# 25为端口号,这一步为连接qq的smtp服务器
server = smtplib.SMTP(smtp_server, 25)
# 调用账号和密码进行登录
server.login(from_addr, password)
# 开始发送email(发送人,接收人,发送的内容)
server.sendmail(from_addr, [to_addr], msg.as_string())
# 退出
server.quit()
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值