有时候,当我们在爬虫或者其他需要机器长时间工作的情况下,代码可能由于某种异常而停止运行,这时候可以利用邮件,短信等手段通知我们,短信接口需要购买,我们可以利用免费的邮件服务来提醒我们。这里,我利用SMTP(simple mail and transfer protocol,简单邮件传输协议)发送邮件。
直接用别人的代码
#!/usr/bin/python3
#-*-coding:UTF-8-*-
import smtplib
import time
from email.mime.text import MIMEText
from email.mime.multipart import MIMEMultipart
#收件人列表
mail_namelist = ["×××××××@qq.com","××××××××@qq.com"]
#发送方信息
mail_user = "邮箱地址"
mail_pass = "邮箱密码"
#邮件标题
mail_subject = "python 发送测试文件"
#邮件文本内容
mail_context = "是邮件内容~~ "
def send_main():
msg = MIMEMultipart()
msg['From'] = mail_user
msg['To'] = ";".join(mail_namelist)
msg['Subject'] = mail_subject
#添加邮件内容
txt = MIMEText("这是邮件内容~~ ooxx")
msg.attach(txt)
#发送邮件
smtp = smtplib.SMTP()
#修改成对应的smtp服务地址以及端口号
smtp.connect('smtp.qq.com:25')
smtp.login(mail_user, mail_pass)
smtp.sendmail(mail_user, mail_namelist, msg.as_string())
smtp.quit()
print ('邮件发送成功')
if __name__ == '__main__':
send_main()
这部分代码还可以为之加上异常处理,当网络断开或者其他情况,也可能会出问题。
不论是使用163邮箱还是QQ邮箱等,都需要开启POP3/SMTP/IMAP服务,参见参考网址1。126,188等邮箱的服务地址以及端口号详见参考网址2。QQ邮箱开启SMTP服务办法,见参考网址3.
说明:此文中的代码完全摘抄于http://www.cnblogs.com/ztteng/p/4439154.html