Python爬虫小白入门(二)--服务器定时发送给邮件给你

忘了宝图镇文了。这期选择我最喜欢的电影天才Alan Walker镇楼,话说人家今年才是18~我都20了

开篇语

想象一下,当你跟别人聊天的时候,突然手机响了,你掏出来一看,默默点了下头。朋友探过头来问,谁的消息啊你淡定的告诉他:“哦,这个啊,是我的服务器发给我的,是我的爬虫给我扒下来的简书的数据”。闭上眼,你是不是仿佛能看到你朋友的眼神?~~

(补:机械原理考完了,机械原理考完了,机械原理考完了;项目进度讲完了~~~爽~~~~哦~~~燥起来~high起来)

正文

写作动机,跟上篇是类似的,我再复述一遍:

最近对简书中毒很深,所以想要写一个爬虫,放到服务器上,自己帮我随时查看简书的主页的更新状况,计划中是这样的:
这个爬虫,身兼数职:
** 1. 首先,每一个小时自动查询简书的主页的文章;**
** 2. 然后,比对名字相同的文章在一个小时内的阅读量,喜欢,评论,打赏数目,全部存储进入数据库,然后进行处理,比对,分析出每一篇文章不同时间的增长幅度以及系数还有对他们的位置进行排序;**
** 3. 最后,还要写一个六小时自动执行的数据汇总邮件发给我的脚本。**

昨晚已经写过关于爬虫从简书爬数据的文章了,没上首页有点可惜,争取这一篇上去!!

代码奉上(多次Debug,亲测可用;记得开启邮箱SMTP,下面有指导)


import smtplib
from email.mime.text import MIMEText
from email.header import Header


#设置服务器(我用的gmail,你们用的什么就换成什么
#比如qq,163~记得登录网页版邮箱然后在设置里面修改支持smtp
mail_host="smtp.gmail.com" 
#用户名
mail_user="MyGmailName@gmail.com"    
#邮箱密码
mail_pass="MyPasswordOfGmail"   


sender = 'MyGmailName@gmail.com'
receivers = ['TheNameOfReceiver@163.com']  # 接收邮件,可设置为你的QQ邮箱或者其他邮箱

#读取我的自动爬虫获取的内容
F = open("/home/test/bs.txt")
#list改成str格式,否则编码不通过
f=str(F.readlines())

# 三个参数:第一个为文本内容,第二个 plain 设置文本格式,第三个 utf-8 设置编码
message = MIMEText(f, 'plain', 'utf-8')
message['From'] = Header("your remote server", 'utf-8')
message['To'] =  Header("my lorder", 'utf-8')

subject = 'Python SMTP 邮件测试'
message['Subject'] = Header(subject, 'utf-8')


try:
    smtpObj=smtplib.SMTP_SSL(mail_host,465)
    smtpObj.set_debuglevel(1)
# smtpObj.connect(mail_host, 25)    # 25 为 SMTP 端口号
    smtpObj.login(mail_user,mail_pass)
    smtpObj.sendmail(sender, receivers, message.as_string())
    print ("邮件发送成功")
except smtplib.SMTPException:
    print ("Error: 无法发送邮件")
QQ邮箱设置地址
qq的设置,开启即可
163邮箱的设置,同理可得

Linux自动发送设置

Linux中,周期执行的任务一般由cron这个守护进程来处理。cron读取一个或多个配置文件,这些配置文件中包含了命令行及其调用时间。cron的配置文件称为“crontab”,是“cron table”的简写。
相关命令

查看cron状态
sudo  service cron status 
开启cron
sudo /etc/init.d/cron start
关闭cron
sudo /etc/init.d/cron stop
重启cron
sudo /etc/init.d/cron restart

在crontab文件中写入需要执行的命令和时间,该文件中每行都包括六个域,其中前五个域是指定命令被执行的时间,最后一个域是要被执行的命令。每个域之间使用空格或者制表符分隔。格式如下:

minute hour day-of-month month-of-year day-of-week commands
合法值为:00-59 00-23 01-31 01-12 0-6 (0 is sunday) 

除了数字还有几个特殊的符号:"*"、"/"和"-"、","
*代表所有的取值范围内的数字"/"代表每的意思,"/5"表示每5个单位"-"代表从某个数字到某个数字","分开几个离散的数字

:commands 注意以下几点
要是存在文件,要写绝对路径。即使是打印也不会显示在显示屏,在后台运行,最好重定向日志.

step1:写cron脚本文件,命名为crontest.cron。
表示,每隔一小时,执行一次爬虫命令 ,并且定向日志为bs.txt

00  * * * * python3 /home/test/bs.py > /home/test/bs.txt 
#这里有点多余的嫌疑,也就是,每一次写入都会覆盖前面的内容。相当于七次是白搞的。不过,测试嘛,任性~
00 08,16,23 * * *  python3 /home/test/mailtome.py 
Look,It like this

step2:添加定时任务。执行命令
(在此之前先新建一个bs.log存放命令日志)

crontab /home/test/crontest.cron >> /home/test/bs.log

step3:"<code>crontab -l</code>" 查看定时任务是否成功或者检测/var/spool/cron下是否生成对应cron脚本

crontab -l
have a look

结果程序会每个小时里爬一次简书(~T~简书,你怕是不怕?~T~)写入文件bs.txt,然后每8个小时发送一次给我~~

自动发送至我的邮箱咯。这就是效果出来啦~~~(咦~格式有点问题,标签没去掉。下次解决,今天先乐呵乐呵,写完我就去看B站啦)

结束语

今天特别开心,上午一大早,两年来仅有的几次迟到课堂(九点出发去找老师做进度汇报,然后十点四十回来,迟到了半个小时的CAD技术课),但是,怎么比得上进度汇报结束的开心呢?然后下午,照例点了一杯游泳馆小集贸的正好茶(特调咖啡,HUSTers,我推荐哦),然后闷头在东九怼机械原理,晚上考完,感觉还可以,不出意外90是保底,95有可能,要使老师改的松,接近100也不是没可能hia 哈哈哈~~现在这么开心的在这儿写文章,爽啊啊,后面更新会很频繁的,因为本学期只剩下三节课,最近的考试还是本月27号~~爽到飞起。钻研技术!钻研技术!!Python是我的本命语言之一,后期会继续更新的,不过更多的就是关于爬虫的调整了,有兴趣追更的朋友可以先去了解一下爬虫,要资料的话可以直接私戳我,留下邮箱---我到时候直接发给你就好了。OK,写的差不多了,找学妹聊天去了~~别误会,也是一个简书的人啦。最近想跟我学Python 。。。。hiahia,自己还没出师呢就收徒弟了~~~

个人宣言

知识传递力量,技术无国界,文化改变生活!

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 195,898评论 5 462
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 82,401评论 2 373
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 143,058评论 0 325
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 52,539评论 1 267
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 61,382评论 5 358
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 46,319评论 1 273
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 36,706评论 3 386
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 35,370评论 0 254
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 39,664评论 1 294
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 34,715评论 2 312
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 36,476评论 1 326
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 32,326评论 3 313
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 37,730评论 3 299
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,003评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,275评论 1 251
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 41,683评论 2 342
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 40,877评论 2 335

推荐阅读更多精彩内容