一、简介
暴力猴是一款脚本管理器,可以在浏览器中加载并运行用户自定义的JavaScript脚本,可用于增强浏览器功能,改变网站外观等。暴力猴可运行于Chrome、Firefox、Opera等主流浏览器。
二、安装和使用
安装暴力猴很简单,只需在浏览器应用商店中搜索并下载即可。安装完成后,在浏览器右上角会出现暴力猴图标,单击即可进入脚本管理界面。在此界面中,用户可进行新建、编辑、删除、禁用脚本等操作,同时也可对全局配置进行修改。
编写暴力猴脚本可使用任意文本编辑器,将代码复制到暴力猴中即可运行。用户可在编写脚本时参考暴力猴提供的API进行操作。下面是一段实现将豆瓣图书评分转化为星级显示的例子:
// ==UserScript== // @name 转换豆瓣图书评分为星级 // @namespace none // @version 1 // @description 将豆瓣图书评分转化为星级显示 // @author Leo // @match https://book.douban.com/* // @grant none // ==/UserScript== (function() { 'use strict'; // 获取豆瓣评分元素 let score = document.querySelector('.rating_num'); if(score) { // 将评分转成星级 let score_star = Math.round(parseFloat(score.textContent) / 2); score.innerHTML = ''; for(let i = 0; i < 5; i++) { let icon = '<i class="fas fa-star"' + (i < score_star ? 'style="color: #e3cf7a;"' : '') + '></i>'; score.innerHTML += icon; } } })();
三、常用功能
1. 页面自动跳转
暴力猴脚本可在页面加载完成后自动跳转到指定网页,如下所示:
// ==UserScript== // @name 自动跳转到百度 // @namespace none // @version 1 // @description 页面自动跳转到百度 // @author Leo // @match https://www.baidu.com/* // @grant none // ==/UserScript== (function() { 'use strict'; // 延时2秒跳转,可根据需要自行修改 setTimeout(() => { window.location.href = 'https://www.baidu.com/'; }, 2000); })();
2. 页面元素修改
暴力猴脚本可对页面元素进行添加、删除、替换等操作,如下所示:
// ==UserScript== // @name 修改搜索框背景色 // @namespace none // @version 1 // @description 将百度搜索框背景色改为红色 // @author Leo // @match https://www.baidu.com/* // @grant none // ==/UserScript== (function() { 'use strict'; // 修改搜索框样式 let search_box = document.querySelector('#kw'); if(search_box) { search_box.style.backgroundColor = 'red'; } })();
3. Ajax请求拦截
暴力猴脚本可拦截页面中的Ajax请求并进行处理,如下所示:
// ==UserScript== // @name 拦截Ajax请求 // @namespace none // @version 1 // @description 拦截页面中的Ajax请求并修改返回值 // @author Leo // @match https://www.example.com/* // @grant none // ==/UserScript== (function() { 'use strict'; // 拦截Ajax请求 let original_fetch = window.fetch; window.fetch = function (url, init, ...args) { if (url.indexOf('/api') > -1) { // 修改请求返回值 let fake_resp = { data: { user: 'test' } }; let new_resp = new Response(JSON.stringify(fake_resp)); return Promise.resolve(new_resp); } return original_fetch.apply(this, [url, init, ...args]); } })();
四、总结
暴力猴是一款非常强大的脚本管理器,在网页开发、浏览器定制等方面都有着广泛的应用。学会使用暴力猴脚本能够极大地提高工作效率,让我们的网页浏览体验更加个性化。