油猴脚本是什么?油猴脚本(Tampermonkey)安装使用详解

原创 2024-07-27 08:08:53电脑知识
166

油猴脚本(tampermonkey).jpg

一、油猴脚本是什么?

油猴脚本(Tampermonkey)是一款强大的浏览器扩展,允许用户在网页上运行自定义的JavaScript代码。它支持几乎所有现代浏览器,包括Google Chrome、Mozilla Firefox、Microsoft Edge等。通过油猴脚本,用户可以实现各种功能,如美化网页界面、自动执行某些操作、增强网站功能等。

油猴脚本的基本概念

1. 用户脚本

用户脚本是指那些由用户编写或从他人那里获取的JavaScript脚本,它们在特定的网页上运行。这些脚本可以修改网页的行为和外观,实现用户自定义的功能。

2. GM_*函数

GM_*函数是一组由油猴提供的API,允许用户脚本与浏览器扩展进行交互。这些函数提供了许多有用的功能,如存储数据、显示通知、请求资源等。

3. @metadata标签

@metadata标签是用户脚本中用于配置脚本行为的特殊注释。常见的@metadata标签包括@name、@version、@description、@match等,它们定义了脚本的基本信息和运行环境。

二、油猴脚本的安装与使用

1. 安装油猴扩展

在Chrome浏览器中安装:

  1. 打开Chrome浏览器,进入Chrome网上应用店

  2. 搜索“Tampermonkey”。

  3. 点击“添加至Chrome”按钮,确认安装。

在Firefox浏览器中安装:

  1. 打开Firefox浏览器,进入Firefox附加组件页面

  2. 搜索“Tampermonkey”。

  3. 点击“添加到Firefox”按钮,确认安装。

2. 创建新脚本

安装完油猴后,打开浏览器,点击右上角的油猴图标,选择“创建新脚本”。

3. 编写脚本代码

在新脚本中,你可以编写自己的JavaScript代码。以下是一个简单的示例脚本:

// ==UserScript==
// @name         示例脚本
// @namespace    http://tampermonkey.net/
// @version      0.1
// @description  尝试修改网页标题
// @author       你
// @match        *://*/*
// @grant        none
// ==/UserScript==

(function() {
    'use strict';
    document.title += " - 已修改";
})();

4. 保存并运行脚本

编写完脚本代码后,点击右上角的“保存”按钮。之后,每次访问匹配的网页时,该脚本都会自动运行。

三、常见用例

1. 美化网页界面

例如,你可以编写一个脚本来移除网页上的广告:

// ==UserScript==
// @name         移除广告
// @namespace    http://tampermonkey.net/
// @version      0.1
// @description  移除网页上的广告
// @author       你
// @match        *://*/*
// @grant        none
// ==/UserScript==

(function() {
    'use strict';
    var ads = document.querySelectorAll('.ad');
    ads.forEach(function(ad) {
        ad.parentNode.removeChild(ad);
    });
})();

2. 自动执行操作

例如,你可以编写一个脚本来自动填写表单:

// ==UserScript==
// @name         自动填写表单
// @namespace    http://tampermonkey.net/
// @version      0.1
// @description  自动填写指定表单
// @author       你
// @match        https://example.com/form
// @grant        none
// ==/UserScript==

(function() {
    'use strict';
    document.getElementById('username').value = '你的用户名';
    document.getElementById('password').value = '你的密码';
    document.getElementById('submit').click();
})();

3. 增强网站功能

例如,你可以编写一个脚本来为某个网站添加额外的功能:

// ==UserScript==
// @name         网站功能增强
// @namespace    http://tampermonkey.net/
// @version      0.1
// @description  为指定网站添加额外功能
// @author       你
// @match        https://example.com/*
// @grant        none
// ==/UserScript==

(function() {
    'use strict';
    // 添加一个新的按钮
    var button = document.createElement('button');
    button.innerHTML = '点击我';
    button.onclick = function() {
        alert('你点击了按钮!');
    };
    document.body.appendChild(button);
})();

四、高级技巧

1. 使用GM_*函数

GM_*函数提供了一系列强大的功能。例如,使用GM_setValue和GM_getValue来存储和读取数据:

// ==UserScript==
// @name         存储数据示例
// @namespace    http://tampermonkey.net/
// @version      0.1
// @description  使用GM_setValue和GM_getValue存储和读取数据
// @author       你
// @match        *://*/*
// @grant        GM_setValue
// @grant        GM_getValue
// ==/UserScript==

(function() {
    'use strict';
    GM_setValue('key', 'value');
    var storedValue = GM_getValue('key', 'default');
    console.log(storedValue);
})();

2. 动态注入CSS

有时,你可能需要动态注入CSS来修改网页样式。可以使用GM_addStyle函数来实现:

// ==UserScript==
// @name         动态注入CSS示例
// @namespace    http://tampermonkey.net/
// @version      0.1
// @description  动态注入CSS修改网页样式
// @author       你
// @match        *://*/*
// @grant        GM_addStyle
// ==/UserScript==

(function() {
    'use strict';
    GM_addStyle('body { background-color: #f0f0f0; }');
})();

3. 使用外部库

油猴脚本支持加载外部库。例如,你可以使用GM_xmlhttpRequest来加载jQuery库:

// ==UserScript==
// @name         加载外部库示例
// @namespace    http://tampermonkey.net/
// @version      0.1
// @description  使用GM_xmlhttpRequest加载jQuery库
// @author       你
// @match        *://*/*
// @grant        GM_xmlhttpRequest
// ==/UserScript==

(function() {
    'use strict';
    GM_xmlhttpRequest({
        method: 'GET',
        url: 'https://code.jquery.com/jquery-3.6.0.min.js',
        onload: function(response) {
            var script = document.createElement('script');
            script.text = response.responseText;
            document.head.appendChild(script);
        }
    });
})();

五、注意事项

1. 安全性

由于油猴脚本可以在网页上运行任意代码,因此存在一定的安全风险。务必从可信来源获取脚本,并定期更新油猴扩展以获取最新的安全修复。

2. 兼容性

不同的浏览器可能对油猴脚本的支持有所不同。在编写脚本时,尽量使用兼容性强的API和语法,以确保脚本在不同浏览器中的正常运行。

3. 性能优化

油猴脚本可能会对网页性能产生影响,特别是在处理大量数据或频繁操作DOM时。可以通过优化代码、减少不必要的操作来提升脚本性能。

六、总结

油猴脚本(Tampermonkey)是一款功能强大的浏览器扩展,允许用户在网页上运行自定义的JavaScript代码。通过掌握基本概念、安装使用方法、常见用例和高级技巧,你可以充分利用油猴脚本来提升浏览体验、自动化操作和增强网站功能。尽管在使用过程中需要注意安全性、兼容性和性能优化,但只要合理使用,油猴脚本将成为你浏览互联网的强大工具。

油猴脚本 tampermonkey
THE END
zhanid
勇气也许不能所向披靡,但胆怯根本无济于事

相关推荐