最近上手写了自己的第一个油猴脚本(不知道这样说准不准确),严格意义上来将是,借助于油猴这个脚本平台,写了自己的第一个脚本,并成功运行测试
当然,这篇文章不讲我究竟做了啥,而是说在编写脚本时需要注意的东西,主要是上面的一大排注释,这些注释非常有用的,它表明了脚本的各个属性。
下面来简单介绍一下。
属性名 | Value | 备注 |
---|---|---|
name | 油猴脚本的名字 | |
namespace | 命名空间,类似于Java的包名,用来区分相同名称的脚本,一般写成作者名字或者网址 | |
version | 脚本版本,油猴脚本的更新会读取这个版本号 | |
description | 描述,用来告诉用户这个脚本是干什么用的 | |
author | 作者名字 | |
match | 只有匹配的网址才会执行对应的脚本, | 超级重要 |
grant | 指定脚本运行所需权限,如果脚本拥有相应的权限,就可以调用油猴扩展提供的API与浏览器进行交互。 | 重要 |
遇到的坑
写好了逻辑,也本地测试搞定了,但是就是不执行,
原因:我的 match 没指定,grant也没指定
// @grant unsafeWindow
unsafeWindow 允许脚本可以完整访问原始页面,包括原始页面的脚本和变量。 相当于全控制,超级管理员
match的使用设置
// @match http://*
相当于在以 http 开头的所有网页中启用该脚本
*
相当于在所有网页中启用该脚本
https://*
相当于在以 https开头的所有网页中启用该脚本
http://www.baidu.com/*
相当于在以 http://www.baidu.com 开头的所有网页中启用该脚本,即在和百度相关的网页中启用该脚本
// @match *://blog.csdn.net/*
相当于在以 在csdn 的所有网页中启用该脚本
你可以设置多个match
例如
// @match *://blog.csdn.net/*
// @match *://www.zhihu.com/*
// @match *://www.bilibili.com/*