Tampermonkey(油猴)脚本编写快速入门

目录

油猴脚本概述

脚本注释/注解

脚本权限 grant 

添加新脚本

自定义网页倒计时

网页浏览离开黑屏保护

微博视频下载助手

华为云工作项列表突出展示工作项

Greasy Fork 发布脚本


油猴脚本概述

  1. Tampermonkey 是一款免费的浏览器扩展和最为流行的用户脚本管理器,相当于一个管理插件的插件,它适用于 Chrome, Microsoft Edge, Safari, Opera Next, 和 Firefox。
  2. 虽然有些受支持的浏览器拥有原生的用户脚本支持,但 Tampermonkey 将在您的用户脚本管理方面提供更多的便利,它提供了诸如便捷脚本安装、自动更新检查、标签中的脚本运行状况速览、内置的编辑器等众多功能, 同时Tampermonkey还有可能正常运行原本并不兼容的脚本。
  3. 官网及下载安装地址:Home | Tampermonkey,安装非常简单,与安装普通的插件无异。
  4. Tampermonkey 内置有编辑器,可以非常方便地管理、编辑用户脚本;支持自动更新检查功能。
  5. 官网文档:https://www.tampermonkey.net/documentation.php。

脚本注释/注解

1、如下所示为新建脚本时的默认内容,顶部的注释/注解表明了脚本的各个属性。

2、元数据块必须位于顶部 ==UserScript== 之间。

3、Greasy Fork 要读取的脚本元键值:https://greasyfork.org/zh-CN/help/meta-keys

// ==UserScript==
// @name         New Userscript
// @namespace    http://tampermonkey.net/
// @version      0.1
// @description  try to take over the world!
// @author       You
// @match        https://mp.csdn.net/mp_blog/creation/editor/new?spm=1001.2101.3001.5352
// @icon         https://www.google.com/s2/favicons?sz=64&domain=csdn.net
// @grant        none
// ==/UserScript==(function() {'use strict';// Your code here...
})();

属性名

作用

@name

油猴脚本名称,会展示到浏览器中。必填项。

@namespace

脚本命名空间,用于唯一确定脚本。油猴管理面包中点击主页按钮即可跳转到此地址。

@homepage主页地址。油猴管理面包中点击主页按钮即可跳转到此地址。可以作为脚本更新网址。

@version

脚本版本,用于脚本的更新。必填项。

@icon用于指定脚本图标,可以设置为图片 URL 地址或 base64 的字符串

@description

脚本描述。必填项。

@author

作者名字

@license

脚本所使用的许可协议名称或地址,该协议需包含用户是否允许二次分发  或修改  脚本的权利。

其它人都可以随意使用时,指定为 MIT 即可。

@match

使用通配符匹配需要运行网址,例如 * 、 http://* 、 http://www.baidu.com/*等。

@exclude排除匹配到的网站。
@include保护匹配到的网站。
@run-at指定脚本的运行时机,如 页面加载完成时执行:@run-at document-end

@grant

指定脚本运行所需权限,拥有相应的权限才能调用油猴扩展提供的与浏览器进行交互的API。如果为 none,则不使用沙箱环境,脚本会直接运行在网页的环境中,这时无法使用大部分油猴扩展的 Api,而只能使用油猴默认添加的几个最常用 Api。

@require

指定脚本依赖的其他js库,比如 JQuery。

@connect

用于跨域访问时指定的目标网站域名。

当用户使用 gm_xmlhttprequest 请求远程数据的时候,需要使用connect指定允许访问的域名,支持域名、子域名、ip地址以及 * 通配符

@updateURL

@installURL
@downloadURL

脚本更新网址,当油猴扩展检查更新的时候,会尝试从这个网址下载脚本,然后比对版本号确认是否更新,不写时,@homepage也可以代替。

@supportURL用户可获得该脚本技术支持的链接地址 (如:错误反馈系统、论坛、电子  邮件),该链接将显示在脚本的反馈页面。
@contributionURL用于捐赠脚本作者的链接,该链接将显示在脚本的反馈页面。
@contributionAmount建议捐赠金额,请配合 @contributionURL 使用。

脚本权限 grant 

1、@grant 常用的权限,注意其中的前缀 GM 必须大写

权限名

功能

@grant unsafewindow

允许脚本可以完整访问原始页面,包括原始页面的脚本和变量。

@grant GM_getValue

//GM_getValue(name,defaultvalue)

从油猴扩展的存储中访问指定key的数据。可以设置默认值,在没成功获取到数据的时候当做初始值。如果保存的是日期等类型的话,取出来的数据会变成文本,需要自己转换一下。

@grant GM_setValue

将数据保存到油猴扩展的存储中:GM_setValue(name,value)。

即使关了浏览器,重新打开仍然能获取到值。

同一个值在匹配的全部网页中都能获取到,所以必须在属性名中加以区分。

@grant GM_deleteValue

将数据从油猴扩展的存储中删除:GM_deleteValue(name)

@grant GM_listValues从油猴扩展的存储中访问全部数据。
@grant GM_addValueChangeListener

添加对 gm_setvalue 的值进行监听,当值发生变化时,调用方法事件。

// 添加一个监听器
const listener_id = GM_addValueChangeListener('hello',function(name, old_value, new_value, remote){
            // 方法回调
});

@grant GM_removeValueChangeListener移除对 GM_setvalue 的值进行监听:GM_removeValueChangeListener(listener_id)

@grant GM_xmlhttprequest

异步请求数据。

GM_xmlhttpRequest({
    url: "http://www.httpbin.org/post",
    method: 'POST',
    headers: {
            "content-type": "application/json"
      },
    data: {xxx},
    onerror: function(res){
        console.log(res);
    },
    onload: function(res){
        console.log(res);
    }
});

@grant GM_setclipboard

// GM_setclipboard(data, info)

将数据复制到剪贴板中,第一个参数是要复制的数据,第二个参数是mime类型,用于指定复制的数据类型。

@grant GM_log

用于在控制台中打印日志,便于调试: GM_log("Hello World")

也可以使用原生的 console.log(xxx); 打印日志。

@grant GM_addStyle

向网页中指定元素(可以通过标签名,class样式,ID等选择)添加样式:GM_addStyle(css)
示例一:GM_addStyle("#main_nav,.title_box-WbZs0QZH{display:none !important}");
  a、向指定id的元素,以及含有指定样式的元素添加css样式。
  b、多个选择器时用逗号隔开,多个style样式属性时用分号隔开。
  c、每一个css属性后面要跟一个 !important,表示添加的属性权限。
示例二:* 表示选择所有元素,如 GM_addStyle("* {margin-top:0px !important; margin-left:0px !important}");

示例三:GM_addStyle("div .logo {background-image: url('http://xxxxxx.jpg') !important}");

  a、为含有 .logo 样式的 div 元素设置背景图片(中间的空格表示层级)。

示例四向页面添加自定义样式属性,然后使用 JQuery 的 hasClass、addClass、removeClass、toggleClass 方法操作目标元素的样式。
    GM_addStyle(".myClass {border: 3px dotted green;background-color: red;}");
    $("#main_nav").addClass("myClass");

示例五:将含有指定属性的div元素设置为不可见。
    GM_addStyle("div[align='center'],div[class='nav_bar wrap'] {display:none !important}");

@grant GM_notification

设置网页通知/提示。

GM_notification(details, ondone)

GM_notification(text, title, image, onclick)

@grant window.close

@grant window.focus

// @grant GM_registerMenuCommand

注册菜单命令,浏览器油猴插件展示脚本名称时,会携带此菜单,方便用户做一些设置,而不用手动修改脚本。

function switchLanguage(){
    // 函数内容
}
GM_registerMenuCommand("语言切换", switchLanguage);
GM_registerMenuCommand("自定义設置", () => {
    window.open("https://xxx.xxx.xxx/xxx", "_blank");
});

@grant GM_openInTab

// GM_openInTab(url, options)

打开一个新的标签页面,类似 windown.open(url)。

url:指定打开的新 URL 地址;

options:指定页面展示方式及焦点停留页面。
GM_openInTab("https://www.baidu.com",{ active: true, setParent :true});

// active:true,新标签页获取页面焦点
// setParent :true:新标签页面关闭后,焦点重新回到源页面

添加新脚本

  1. 安装好油猴插件之后,在浏览器右上角找到并点击油猴插件,选择添加新脚本
  2. 然后在打开的编辑器窗口中可以编辑自己的脚本文件,还可以将脚本内容复制到合适的编辑器中编辑,完成之后再复制回来。
  3. 将自己的脚本编写到 // your code here .. 那里,可以编写函数,然后在最后调用这几个函数,这样的模块化编写方法写出来的脚本比较容易维护。

自定义网页倒计时

  1. 演示脚本:greasyfork.org/zh-CN/scripts/457839-网页自定义倒计时。
  2. 调试油猴脚本:
    1. 一是最原始的打印日志,可以利用 console.log(xxx) 和 gm_log(xxx) 来将关键信息打印出来。
    2. 二是在脚本需要调试的地方插入 debugger; 语句,然后F12开发者工具调试。

网页浏览离开黑屏保护

  1. 网页一定时间内没有浏览时,自动黑屏保护,即使是刷新或者关闭浏览器重开也会持续保持黑屏。必须输入正确的密码后才能继续正常浏览。 
  2. 网页浏览离开黑屏保护。

微博视频下载助手

1、浏览微博视频时,自动在视频上边展示【下载】按钮,点击按钮即可下载对应的视频,方便快捷。

2、greasyfork.org/zh-CN/scripts/458716-微博视频下载助手。

华为云工作项列表突出展示工作项

https://greasyfork.org/zh-CN/scripts/459871-华为云工作项列表突出展示工作项。

Greasy Fork 发布脚本

  1. 脚本功能没有问题以后,可以分享出来一起使用的,比如可以分享到 gitee、github 等等。
  2. 油猴官方支持好几个网站,其中使用最频繁的是 GreasyFork (油叉) ,操作也很简单,纯中文,按着提示操作即可。
    1. 右上角点击'登录'(可以使用github账号登陆)。新账号登陆后,需要过30分钟左右后才能正式发布脚本。
    2. 登陆之后,点击用户名称进入控制台,选择'发布你编写的脚本',最后添加内容即可,发布时需要指定 @license 许可证。
  3. @namespace 不写时会默认自动生成,这样油猴管理面版中点击主页按钮即可跳转到此地址。
  4. @updateurl 不指定时也可以使用@homepage设置脚本更新地址。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/40866.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

油猴脚本(Tampermonkey)的获取与简单使用

油猴脚本的使用 什么是油猴脚本 「油猴」可以通过安装各类脚本对网站进行定制。当然伟大的脚本面向的是所有上网者,所以借由各位大神的脚本我们能实现更多更强大的功能,例如: 直接下载百度网盘文件(全速)重新定制繁杂的微博页面去掉视频播放…

关于Tampermonkey(油猴)的安装和使用的小白教程

一、Tampermonkey的介绍 Tampermonkey是一个神奇的网络插件,真的是新时代的黑科技,学生党的福音。Tampermonkey对于我来说可是个 好东西。请一定要看下去!! 二、Tampermonkey的安装所需 1.Google Chrome浏览器(其他…

油猴的详细安装(google chrome)

GoogleChrome 一、第一种为了方便我们直接在网盘中获取油猴 一、第一种为了方便我们直接在网盘中获取油猴 tampermonkey 是一款免费的浏览器扩展和最为流行的用户脚本管理器,它适用于 Chrome, Microsoft Edge, Safari, Opera Next, 和 Firefox。虽然有些受支持的浏…

油猴(Tampermonkey)安装教程

油猴简介 Tampermonkey(油猴)是一款免费的浏览器扩展和最为流行的用户脚本管理器,它适用于 Chrome, Microsoft Edge, Safari, Opera Next, 和 Firefox。虽然有些受支持的浏览器拥有原生的用户脚本支持,但 Tampermonkey 将在您的用…

使用Tampermonkey油猴子给浏览器开个挂

油猴简介 一、油猴是什么 油猴(Tampermonkey)是免费的浏览器扩展和用户脚本管理器, 油猴子很特别, 它本身是一个无限手套(脚本管理器), 通过安装无限宝石(脚本), 能为我们提供超神的功能!它可以应用在多款浏览器上,比如谷歌浏览器,QQ浏览器&#xff0c…

【关于油猴的安装和使用的教程】

【 关于油猴的安装和使用的教程】 1.0 油猴简介2.0 安装环境2.1 安装Google Chrome2.2 下载油猴 3.0 总结参考文献 1.0 油猴简介 Tampermonkey是一个神奇的网络插件,真的是新时代的黑科技,学生党的福音。Tampermonkey对于我来说可是个 好东西。请一定要…

很简单的安装油猴(tampermonkey)脚本及使用教程

超简单的油猴安装教程 第一步 第二步 第三步 第一步 下载Tampermonkey.crx (1.24MB) 提取码:2264 第二步 点击谷歌浏览器右上角,找到更多工具,然后点击拓展程序。 打开开发者模式 第三步 简单拖拽,把下载好的文件拖拽进…

油猴的简介和安装

目录 1.油猴简介 2.油猴插件安装 方法1 方法2 3.获取油猴脚本 4.脚本的使用 4.1 脚本的设置及功能 4.2 安装油猴脚本 4.3 新建脚本 5.脚本编写方法 功能注释 脚本权限 编写脚本 1.油猴简介 油猴脚本是一款免费的浏览器扩展和最为流行的用户脚本管理器&#xff0c…

油猴Tampermonkey安装使用教程

油猴可以说是一个无所不能的网络插件,可以说是学生党的大杀器! Tampermonkey安装步骤 1.下载油猴 油猴官网https://www.tampermonkey.net/ 官网页面如下 ,黑色的是稳定版,红色的是测试版,点击下载然后获取就ok了。 2.…

最新最全Tampermonkey(油猴)的获取安装与使用

用Chrome的人都需要知道的超强神器 油猴号称最强的浏览器插件绝非浪得虚名,一个油猴抵得上数十个一般插件也并不是在开玩笑 首先让我们了解一下 什么叫用户脚本: 用户脚本旨在增强用户对浏览体验的控制权。在安装之后,它们可自动为用户访问的网站添加功…

海报图片生成服务在狐友的落地实践

本文字数:22817字 预计阅读时间:58分钟 项目背景 狐友作为搜狐的一款社交产品,在流量传播上有着旺盛的需求点。而在流量传播所需的众多载体之中,海报图片以其简单的分享形式、可定制的视觉体验、自带二维码识别导流等特点&#xf…

直播弹幕玩法,快手3.66亿DAU资源加持!

作为2023年正在兴起的一种新的内容赛道方向,直播间里的弹幕玩法在国内出现之初就受到开发者们的重点关注。(【阅读原文】查看开发者合作指引) 而此次快手直播弹幕玩法的上线,意味着拥有3.66亿DAU的快手将要发力娱乐弹幕互动直播玩…

ChātGРТ+剪映一键成片,3分钟出视频,批量短视频制作指南

引言: 用了GoGPT几个月了,当我最开始使用GPT时,我从未想到它会成为我日常工具中不可或缺的一部分。但是现在,它已经融入了我的生活,让我可以轻松完成各种任务。 在公司管理方面,我用GPT协助我完成很多任务…

数字经济专题报告:AI,第四次场景革命

报告出品方:广发证券 作者:戴康 一、三大驱动:“场景革命 4.0”顺势起航 前三次场景革命:(1)在PC互联网时代,即时通讯、网购、端游的出现标志 着数字经济的第一次场景革命;&#xff…

抓取文献数据以及采用Python读取csv文件并作图

Hello,everyone!!! 我又来了,喜欢搞点骚操作,而又不好好科研的科研僧就是我,介绍完毕开始今天的闲聊。 如果你是直接看如何采用Python最简便的读取csv文件,就可以直接跳到第二部分进行阅读,如果对于抓取文献数据有点兴…

CiteSpace使用教程02-数据采集与转化

CiteSpace使用教程02-数据采集与转化 CiteSpace可以分析的数据库主要包括:中文数据库如CNKI中国知网,CSSCI中国社会科学引文索引;英文数据库如Web of Science等。从相应文献数据库中以主题、关键词等方法搜索并选择文献,导出相应格…

开源客户沟通平台Chatwoot

什么是 Chatwoot ? Chatwoot 是一个开源客户沟通平台,可帮助公司在其网站、Facebook 页面、Twitter、Whatsapp、SMS、电子邮件等上吸引客户。 它是 Intercom、Zendesk、Salesforce Service Cloud 等的开源替代品。 很多网站的右侧或者右下角,…

亚马逊Listing优化,如何写五点描述值得你一看?

了解要包含哪些关键词是一回事,但是你需要以逻辑的方式将它们包含在listing中,以帮助购物者轻松找到有关你产品的信息。 当购物者访问你的产品页面时,他们想确认这是否是他们想购买的产品。也就是说,它是否具有特定的功能以符合他…

天工:国产的 AI 未来可期

1、终于获得了天工的测试机会 ,记录一下什么是天工。 2、对比一下GPT3(这里是指OpenAI的chatGPT免费版本,收假后开通gpt4继续测测) 一、天工 - 国产之光 就他给我过了申请,妥妥的国产之光。想试用的可以试试 官网地址:https://tia…

小智论使用chatgpt如何提升自己工作能力

随着人工智能的快速发展,职场竞争也变得越来越激烈。如何提升工作能力,不仅是每个职场人士需要思考的问题,也是企业和组织需要重视的关键问题。下面,我将从几个方面探讨如何利用AI来提升工作能力。 学习与培训 学习和培训是提升工…