基于python写的钉钉机器人,通过GitHub Action定时任务实现自动化。
可以零成本创建属于自己的钉钉机器人,定时推送订阅内容(例如优惠消息等线报亦或是喜欢UP主的更新);而且完全基于GitHub,也就是说你不需要了解任何编程知识,只需要按照教程稍微部署一下即可获得一个属于自己的钉钉机器人。
详细使用教程见 我的博客
- Fork此项目
- 在Fork的仓库中添加secret:
token、secret、mids(bilibili订阅,可选)、book_ids(番茄小说订阅,可选,多个bookId用英文逗号分隔) - 启动GitHub action(fork的仓库默认没开启action)
- 点击star开始执行Action(第一次star之后就会自动定时运行)
本项目的Action任务参考借鉴于WakeLeanCloud
目前支持:小刀网线报推送、bilibili的up主投稿推送、番茄小说章节更新推送,监测间隔默认半小时。
如果有其他想要实现的功能可以提个issue。
如果想要更改检测频率请自行修改yml里的corn表达式,详细见修改时间间隔。
执行日志目前仅在action任务中有显示,如果有需要的话可以像WakeLeanCloud一样在仓库添加log文件(提个issue吧)。
- 打开番茄小说官网(fanqienovel.com),找到想订阅的小说并进入书页。
- 书页 URL 形如
https://fanqienovel.com/page/7143038691944959011,末尾这串数字就是 bookId。 - 在 Fork 仓库的 Secrets 里新增
book_ids,填入一个或多个 bookId,用英文逗号分隔(例如7143038691944959011,70xxxxxxxx)。 - 下次定时任务运行时,若这些书在最近半小时内更新了章节,就会推送一张章节卡片(书名+章节标题+阅读链接)到钉钉。
首先修改 /.github/workflows/DingTalk_misson.yml 文件中的cron表达式,具体语法说明可以参考官方文档,如果需要测试可以使用官方提供的测试网站crontab guru
然后修改 run.py 文件,将文件顶部的 WINDOW = 1800 修改为其他时间间隔数值,请注意单位为秒。
未来或许会优化代码将它统一到yml中修改。
- 为了功能多样化与个性化,增加推送订阅的线报、视频以及其他网站,并通过模块化的方案供用户自己选择启用。
- debug info的规范化,使用户能更明了的查看程序的具体运行情况。
- 自动拉取仓库更新
- 添加GitHub action缓存,优化启动速度。
以上内容多启发于@JunzhouLiu的仓库JunzhouLiu/BILIBILI-HELPER。总之从他人的仓库里学到了很多,意识到了自己还欠缺了很多。也希望自己的代码规范以及内容能向这些大佬看齐。然而独木不成林,非常希望您能看到这段话有感而发,与我共同建设这个项目。