《高阶前端指北》之Node爬虫脚手架(第十弹收尾)
经过又一夜的沟通,终于跟卷神达成了一致协议。鉴于美国经济出现崩盘迹象,福特裁员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/… ...
如果喜欢我的文章,麻烦点个赞,评个论,收个藏,关个注。
手绘图,手打字,纯原创,摘自未发布的书籍:《高阶前端指北》,转载请获得本人同意。
转载自:https://juejin.cn/post/7136110898858426381