王一之 发表于 2021-8-31 15:24:16

[脚本猫开发指南]脚本猫基础概念介绍

## 基本介绍

脚本猫参考了油猴的设计思路并且支持油猴脚本。

主要实现了一个后台脚本运行的框架,提供了一些特殊的API,让脚本能够做更多的事情,并且提供了一个优秀的编辑器,让脚本代码编写开发更加舒服流畅。

脚本猫除了支持通常的油猴脚本外,还支持 **[后台脚本](https://docs.scriptcat.org/dev/background.html)** 和 **[定时脚本](https://docs.scriptcat.org/dev/cron.html#%E5%AE%9A%E6%97%B6%E8%84%9A%E6%9C%AC)** 脚本状态都使用`Promise`方法来进行管理

### 安装

[快速开始 | 脚本猫 (scriptcat.org)](https://docs.scriptcat.org/use/#%E5%AE%89%E8%A3%85%E6%89%A9%E5%B1%95)

点进去有各大商店的安装地址,Chrome系列的浏览器,也可以直接用crx/zip文件去安装

### API

支持大部分的油猴现有的API,具体可以看官方文档:(https://docs.scriptcat.org/dev/api.html) (https://docs.scriptcat.org/dev/cat-api.html#%E8%AF%B4%E6%98%8E)。

但是后台脚本的开发思路与油猴脚本大有不同。后台脚本不是操作前端的页面元素,不需要访问页面,甚至不需要打开浏览器,资源占用率极低。

通过修改也可以兼容nodejs脚本,可以参考:[京东618动物联萌脚本(测试)](https://bbs.tampermonkey.net.cn/thread-664-1-1.html)

同时也有 [**CloudCat**](https://github.com/scriptscat/cloudcat) 助力脚本猫的脚本上云,可以让脚本在服务器上执行

脚本猫官方文档:[脚本猫 (scriptcat.org)](https://docs.scriptcat.org/)

脚本猫开源地址:(https://github.com/scriptscat/scriptcat)

## 后台脚本

后台脚本主要用于开启脚本或者浏览器启动后,让脚本在后台持续运行。需要在meta信息中加上`@background`描述

例如 (https://bbs.tampermonkey.net.cn/thread-870-1-1.html) 就是后台脚本,当开启后会自动接管浏览器的代理,实现访问加速,当关闭脚本后,会自动结束代理

## 定时脚本

定时脚本可以看作是一种特殊的后台脚本,开启后每隔一段时间自动的执行一次,省去如果使用后台脚本需要自己管理定时时间的问题。定时使用`crontab`表达式,提供了一个精确到秒的`crontab`表达式描述,另外提供了一个`once`语法,表示某段时间内执行一次,例如:

```js
//@crontab * * * * * * 每秒运行一次
//@crontab * * * * * 每分钟运行一次
//@crontab 0 */6 * * * 每6小时的0分时执行一次
//@crontab 15 */6 * * * 每6小时的15分时执行一次
//@crontab * once * * * 每小时运行一次
//@crontab * * once * * 每天运行一次
//@crontab * 10 once * * 每天10点检测运行一次
//@crontab * 10-23 once * * 每天10点后检测运行一次
//@crontab * once 13 * * 每个月13号中的每小时最多运行一次
```

非常适合签到类型和提醒类型的脚本,例如:(https://bbs.tampermonkey.net.cn/thread-370-1-1.html) [饮茶先!饮茶先!](https://bbs.tampermonkey.net.cn/thread-553-1-1.html)

!(data/attachment/forum/202108/31/150802jmji423kfw8bm4fm.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/300 "image.png")

!(data/attachment/forum/202108/31/150952bt1wt0rom620265f.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/300 "image.png")

!(data/attachment/forum/202108/31/150817ew8jt5nuuzu00nnw.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/300 "image.png")

淡淡的记忆 发表于 2021-8-31 15:46:49

ggnb!!

syy 发表于 2021-8-31 15:52:51

热乎的 哥哥nb!!!!{:4_94:}

王一之 发表于 2021-8-31 15:53:33

syy 发表于 2021-8-31 15:52
热乎的 哥哥nb!!!!

开始更脚本猫系列的教程啦!油猴的让李恒道去弄了

Przeblysk 发表于 2021-8-31 16:02:44

我要是不会写 一之gg不会生气吧

王一之 发表于 2021-8-31 16:10:28

Przeblysk 发表于 2021-8-31 16:02
我要是不会写 一之gg不会生气吧

https://bbs.tampermonkey.net.cn/forum.php?mod=attachment&aid=MTE2M3xkYzFkYWM1OHwxNjMwMzk3NDE5fDR8OTIw&noupdate=yes

无了 发表于 2021-8-31 16:23:16

不愧是你

王一之 发表于 2021-8-31 16:28:20

晚柒载 发表于 2021-8-31 16:23
不愧是你
等待哥哥来写脚本哦,这系列教程开始更新!

水凛子 发表于 2021-8-31 17:14:30

tql         

ChP.GNS 发表于 2021-8-31 17:20:50


ggnb!!
页: [1] 2 3 4 5 6
查看完整版本: [脚本猫开发指南]脚本猫基础概念介绍