青龙面板脚本编写教程
首次知道青龙面板大概是21年底, 说是可以用它来薅京东羊毛. 简单介绍就是会有人维护整合仓库, 经常更新里面的脚本, 当我们订阅之后, 就可以自动做任务领京豆、价格保护、玩小游戏等等. 大概运行了半年左右, 福利越来越少, 感觉自己的京东号也黑了, 于是就删掉了仓库, 因为有定时任务的需求, 所以保留了这个项目.
想在上面开发一些脚本来做一些个性化的消息通知, 在写脚本的过程中, 发现在互联网上搜索不到相关资料「OS: 很罕见, 难道我的搜索姿势错了?」, 本着分享的精神, 写下了此文.
关于青龙面板
可以在项目首页找到对其的描述: “支持python3、javaScript、shell、typescript 的定时任务管理软件”
这里先假定你已经读完了项目的 README
. 我推荐使用 Docker 来部署,这样不会污染操作系统.
先说一下我在使用过程中的优点吧:
- 在线管理脚本、环境变量、配置文件、依赖框架
- 在线查看日志
- 在线编写和调试脚本
- 默认的通知脚本, 实现了大部分的平台
再补充几点安全提醒:
- 尽量不要运行 未经验证 的脚本, 任何脚本都有权利获取你的环境变量. (通常环境变量里面会有Cookie)
- 不要暴露默认的端口到公网, 假如某个版本有漏洞而你没有及时修复, 就可能导致你的数据泄露. (这条也适用于部署其他的程序)
编写 Javascript
先提供一个代码模板, 默认需要提供环境变量才会运行.
稍作解释一下:
- 行2: 导入脚本时候的默认定时配置
- 行6: 导入脚本时候的名字
- 行尾: 从 官方脚本 中复制出来, 里面有一些常用功能.
其中 ENV
中的常用函数:
$.getdata(key)
: 从文件读取数据$.setdata(data, key)
: 写数据到文件中$.wait(ms)
: 等待多少毫秒$.log(str)
: 写日志$.msg(str)
: 写消息, 会添加一条明显的提示线, 区别于写日志$.done()
: 标记完成, 会输入脚本运行时间以及对应的日志
除了 ENV
, 其他的代码就跟平台
无关了, 你可以自由的发挥. 如果引入了其他模块, 可以在后台的依赖管理
中添加.
最后
青龙面板的后台做的很人性化, 整体一遍就可以大概知道其功能.
其他语言的脚本, 我还没有编写过, 所以就先不说了, 未来编写的时候, 如果涉及到了平台
的部分, 我再更新此文.
在最后, 放上我的一些自用脚本可供参考.