likes
comments
collection
share

每日定时推送自己的更文统计

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

前言

实践

总体设计

每日定时推送自己的更文统计

    1. 在一个定时服务中固定每天执行统计任务
    1. 先拉取批量拉取文章并统计文章数量
    1. 将统计数据定时推送至飞书机器人

创建飞书机器人

先在飞书中,创建一个属于自己的群。我创建了一个 「日常记录群」,主要用于平时会紧急需要的内容复制黏贴和一些日常的 TODO 计划。再给群添加一个自定义机器人叫做「更文统计」

每日定时推送自己的更文统计

更文统计

更文统计主要涉及接口:

定时任务

后端主要使用的是 Go 语言开发,要完成定时任务主要使用第三方包 cron。

github.com/robfig/cron/v3

cron 库和 与Linux 中crontab命令相似,支持用 5 个空格分隔的域来表示时间。

* * * * *
  • Minutes:分钟,取值范围[0-59],支持特殊字符* / , -
  • Hours:小时,取值范围[0-23],支持特殊字符* / , -
  • Day of month:每月的第几天,取值范围[1-31],支持特殊字符* / , - ?
  • Month:月,取值范围[1-12]或者使用月份名字缩写[JAN-DEC],支持特殊字符* / , -
  • Day of week:周历,取值范围[0-6]或名字缩写[JUN-SAT],支持特殊字符* / , - ?

定时任务实现

func main(){
    fmt.Println("-----定时任务-----")
    // 定时任务
    c := cron.New(cron.WithSeconds())
    c.AddFunc("* 8 * * *", func() {
       fmt.Println("开始指定定时任务")
       st.DealData()
    })
    c.Start()
    // 阻塞 ,或使用其他延迟时间函数
    select {}
}

AddFunc()方法向管理器中添加定时任务.参数1 表示实践规则,参数2是一个无参的函数。设置每天准时8点更新统计的数据,然后推送到飞书中。测试成功后就可以部署到自己的服务器上。

每日定时推送自己的更文统计

参考资料:

转载自:https://juejin.cn/post/7130296803928309773
评论
请登录