likes
comments
collection
share

《高阶前端指北》之Node爬虫脚手架(第十弹收尾)

作者站长头像
站长
· 阅读数 19

经过又一夜的沟通,终于跟卷神达成了一致协议。鉴于美国经济出现崩盘迹象,福特裁员3000,奈飞裁员300等,半数企业要裁员的风波骤起。是否预示着地球要重启,人生要重来?这些天天跟自己月薪3000,半毛钱关系都没有的新闻,奉劝各位少看为主。

卷神说:低垂果实的时代已经结束,技术是唯一能够帮助人类爬到树梢采取果实的梯子。所以,你能做的不是摸鱼,不是卷别人,而是卷自己,投资自己。

随着,十期的课程,我们终于把node-pachong这个项目撸出了雏形。到此,连续浪费十节课的你,也基本进入了NodeJS的大门。

你是否对它,一见如故,一见钟情,你会慢慢感受到一句经典的魔咒:"任何可以用 JavaScript 来写的应用,最终都将用 JavaScript 来写"

定时任务

定时执行任务,定时间隔,定时发送消息,定时推送等场景

npm i node-schedule --save

使用cron格式定时器

* * * * * *
┬ ┬ ┬ ┬ ┬ ┬
│ │ │ │ │ |
│ │ │ │ │ └ 星期(0 - 7) (0 or 7)
│ │ │ │ └───── 月 (1 - 12)
│ │ │ └────────── 天 (1 - 31)
│ │ └─────────────── 时 (0 - 23)
│ └──────────────────── 分 (0 - 59)
└───────────────────────── 秒 (0 - 59)

示例:

每分钟的第30秒触发: '30 * * * * *'
每小时的1分30秒触发 :'30 1 * * * *'
每天的凌晨1点1分30秒触发 :'30 1 1 * * *'
每月的1日1点1分30秒触发 :'30 1 1 1 * *'
2016年的1月1日1点1分30秒触发 :'30 1 1 1 2016 *'
每周1的1点1分30秒触发 :'30 1 1 * * 1'
0 0 10,14,16 * * ? 每天上午10点,下午2点,4点

开始定时任务

const schedule = require('node-schedule')
schedule.scheduleJob(id, '30 * * * * *', () => {
   // 具体任务内容....
   try {
   
   } catch(error) {
   
   }
 })

取消任务

function scheduleCancel(){
    let counter = 1;
    const j = schedule.scheduleJob('* * * * * *', function(){
        
        console.log('定时器触发次数:' + counter);
        counter++;
        
    });
    setTimeout(function() {
        console.log('定时器取消')
      // 定时器取消
        j.cancel();   
    }, 5000);
    
}
scheduleCancel();

总结

到此,本仓库已全部完成,考虑仓库的轻量性,并未增加过多的插件,但依旧会罗列出大佬们常用的工具链。

东西比较多,完善一下放在新的文章《高阶前端指北》之NodeJS大佬常用最新最全工具链里面,方便大家收藏自查。

文献仓库:

淘书:github.com/IceInTheFir… K哥爬虫:github.com/kgepachong/… 爬虫集:github.com/qieguo2016/… 爬虫搜索引擎:github.com/qieguo2016/… ...

如果喜欢我的文章,麻烦点个赞评个论收个藏关个注

手绘图,手打字,纯原创,摘自未发布的书籍:《高阶前端指北》,转载请获得本人同意。