python爬虫之——发邮件
发邮件是一件很简单的事,生活在这个时代的人大多都用着。这里讲的发邮件跟它类似又有区别,区别就在于,自己写段代码,发邮件。好处就是你可以设置一个触发条件,一触发就给某人发邮件。有什么用呢?我举个例子:
有个男生看上了一位女生,男生为了能了解女生的动态,为彼此制造更多的话题。间接知道了女生喜欢来简书。于是男生写了一个网络爬虫,每隔五分钟浏览一次女生主页的动态,每当女生有新关注过文章或者给谁点过赞,爬虫马上就给男生发邮件通知他,女神有新的动态啦!一次,女生半夜给某位简友点赞,男生就马上知道女生还没睡觉。于是男生马上找女生聊天,夜深人静,他们聊了很久……
知道了吧,这个自动发邮件还可以有很多功能,自己发挥吧!这时估计有人会问,那爬虫是什么呢?不懂得朋友可以去百度问问,如果有需要,再写写爬虫。
下面讲讲如何实现自动发邮件:
编写环境:windows10,python3.5
python中使用的库是:smtplip和email
使用SMTP邮件传输协议,想用SMTP自动发邮件的朋友们,先检查一下自己的邮箱是否开启了SMTP协议。
代码如下:
import smtplib
from email.mime.text import MIMEText
from email.header import Header
Sender ="*******@163.com" # 发件人Email地址
AuthorizationCode='*********' # 授权码,163邮箱开启SMTP服务时授权第三方登陆邮箱的授权码
receiver ="***************@163.com" # 收件人地址
smtp_server ='smtp.163.com' # SMTP服务器地址
msg.MIMEText('你好!我是Python发邮测试!','plain','utf-8') #邮件正文
msg['Subject']=Header('测试','utf-8') #邮件主题
msg['From']=formataddr(['***',Sender]) #发件人,显示在收件人界面上
msg['To']=formataddr(['',receivers]) #收件人
smtpObj = smtplib.SMTP()
smtpObj.connect(smtp_server,25) # 25 为 SMTP 端口号
smtpObj.login(Sender,AuthorizationCode) #登陆邮箱
smtpObj.sendmail(Sender, receivers, msg.as_string()) #发送邮件
smtpObj.quit() #推出
到此,可以发送邮件了!可以匿名发送邮件哦,自己使用一下就知道如何用上述代码发送匿名邮件了。