每当我们写爬虫的时候,短暂的代码运行与抓取如果期间出现异常情况,我们可以及时的发现。可实际的爬虫开发项目往往运行需要耗时,对于增量式爬虫有时也是需要放到服务器上面跑的。这样我们就不能及时的观察到异常情况,那有没有比较容易实现的技术来解决这样的问题呢?(经验总结在最后)
答案是肯定的,有!那就是使用邮件通知,那具体如何操作呢?
接下来我来模拟写一下需求:
当爬虫出现故障时,第一时间通知程序员小哥哥来维护,采用邮件通知的方式。
那我们首先来介绍一下 Python 当中支持 Smtp 协议模块叫什么名字,有以下两个模块以及他们对应的作用:
email负责构造邮件
smtplib负责发送邮件
我们这里使用大家常用的 QQ 邮箱作为演示,小伙伴也可以使用其他邮箱可自行选择。在使用 QQ 邮箱时需要做以下配置。
1. QQ 邮箱配置
这里我们使用 SMTP 发信功能所以,您需要先开启 SMTP 发信功能才能通过 SMTP 接口发送邮件。
SMTP 协议是一个简单的邮件传输协议,利用它您可以将邮件发送给别人。此协议使用命令和应答在客户端与服务器之间传输报文。即客户端发出一个命令,服务器返回一个应答。发送方与接收方进行一问一答的交互,由发送方控制这个