装了 Chrome 不用这个扩展,还不如去用 IE !
# 800.装了 Chrome 不用这个扩展,还不如去用 IE !
本文是《最全面的浏览器教程》第八篇,本文主要介绍篡改猴。
数量庞大的扩展已经成为 Chrome 浏览器的强大之处,而篡改猴更是其中的神级扩展,用户数量超过 1100 万,有必要单独拿一篇出来介绍。
如果你还不会安装插件,可以看看我前一篇文章: Chrome 扩展全指南(浏览器必备)
# 篡改猴是什么
官网:https://www.tampermonkey.net
论坛:https://bbs.tampermonkey.net.cn
篡改猴是一个脚本管理器,可以为你的浏览器加载各种各样有趣、实用、脑洞大开的脚本,对你正在访问的指定网站按照你的需求进行修改,从而让你的浏览器前所未有地强大。
而什么是脚本?其实就是几行代码(一般是 JavaScript 代码),任何人都可以编写,你可以理解为是一个小插件。
它的原理也不复杂,我们将它和浏览器作个对比,你就懂了:
名称 | 使用步骤 | 获得效果 |
---|---|---|
浏览器(能进行插件管理) | 安装插件 | 增强功能 |
篡改猴(能进行脚本管理) | 安装脚本 | 增强功能 |
你可能之前听说过该扩展,但因为看到「脚本」而不敢尝试,其实它操作很简单的,安装脚本就行,几乎不用其他配置。
# 篡改猴有什么用
篡改猴可以通过安装各类脚本对网站进行定制,它不仅仅能定制网站的样式,还能实现更多更强大的功能,例如:
- 直接下载百度网盘文件,网盘密码自动填充条状
- 重新定制繁杂的微博页面
- 破解 VIP 会员视频集合,去掉视频播放广告
- 将网站默认的「二维码登录」改回「账号密码登录」
- 绕过搜索引擎的跳转提示
- 还原清新的小说阅读模式
- 豆瓣和 IMDb 互相显示评分
- ……
几乎你想要的功能,都有对应的脚本,安装即用。
# 脚本管理器的历史
简单介绍一下历史,让你用起来更明白。
# 油猴与篡改猴
- 2005 年,Aaron Boodman 开发了最初的用户脚本管理器:Greasemonkey,它是 Firefox 的插件。Greasemonkey 中文直译就是「油腻的猴子」,简称油猴
- 2008 年,Chrome 发布,逐渐成为最流行的浏览器。其自然也有对于脚本的需求,开始有人移植油猴到谷歌上。
- 2010 年,Tampermonkey 发布,可以在 Chrome 上使用脚本了。
- 2019 年,Tampermonkey 的用户已经超过 1000 万。随着使用量不断上升,Tampermonkey 逐渐取代了油猴。但 Tampermonkey 一直没正式的中文名,经常被习惯性地称为油猴。随后官网居然也用油猴这个名字。
- 2023 年,有网友看不下去了,给 Tampermonkey 正名 (opens new window),官网也修改为了正式名字为:篡改猴。
其实,Tamper 本身就不具备“油”的意思,更接近于“篡改”的意思,建议以后也用这个正式的名字。
# 暴力猴
你可能还听说过 Violentmonkey 暴力猴,其发展过程也和篡改猴类似:因为油猴太好用了,所以有团队开发了暴力猴,可以用在遨游和火狐浏览器上,后续也支持了 Chrome。
相比较 Tampermonkey,暴力猴界面更简洁,占用资源更少,并且开源在 Github (opens new window) 上,也是一大优点。
# 脚本猫
除了刚刚介绍的几个“猴子”,还有一只“猫”:脚本猫,也是一个脚本管理器。
官网:https://scriptcat.org
开源:https://github.com/scriptscat/scriptcat,已有 1.9k Star
特点:
- 页面更好看,更现代化,支持黑夜模式
- 参考了油猴的设计思路,兼容油猴 90%+ 的脚本,且提供了更强大的 API,更多的功能
- 增加了后台脚本、定时脚本、云同步、脚本合集等功能,通过沙盒机制确保安全
- 提供了一个优秀的编辑器(支持自动补全和 ESLint),让脚本代码编写开发更加舒服流畅
- 有自己的脚本站:https://scriptcat.org/zh-CN/search
# 选哪个?
目前,油猴,篡改猴,暴力猴,脚本猫功能都差不多,脚本也基本上都互相兼容,自己挑一个喜欢的就行。
这几款主流的浏览器扩展的支持情况见下表:
浏览器 | Greasymonkey | Tampermonkey | Violentmonkey |
---|---|---|---|
Chrome | 支持 | 支持 | |
Edge | 支持 | 支持 | |
Safari | 支持 | ||
Firefox | 支持 | 支持 | 支持 |
Opera | 支持 | 支持 | |
Vivaldi | 支持 | ||
Maxthon 遨游 | 支持 | ||
Dolphin | 支持 | ||
UC | 支持 | ||
支持 |
篡改猴在权限控制、脚本编辑和调试、全局黑白名单这些方面都做得相当不错,易用性相比 Greasymonkey 提升了不少。
后续本文也主要以 Tampermonkey 为例进行讲解。
# 安装篡改猴
篡改猴支持众多浏览器,可以直接在扩展集市里搜索,也可以在篡改猴官网找到插件安装地址。
安装成功之后,你会在扩展栏看到一个类似望远镜的图标,这个就是 Tampermonkey。你可以单击它,查看扩展弹出菜单。
# 安装脚本
安装好篡改猴后,默认是没有安装任何脚本的,得自己安装脚本,才能使用上边提到的神奇功能。
安装好扩展相当于你手里有了一把枪,还要有子弹才能发挥枪的威力。
围绕这款插件,众多高手们编写了大量教程,开发了各种实用的脚本,为我们带来了丰富的使用体验。
那么哪里获取呢?我们可以打开官网,点击「用户脚本」看看:
这里通常会介绍几个网站,可以在上面搜索、安装脚本。
我这里列几个常见的:
- Greasy Fork (opens new window)(油叉):最收欢迎的脚本网站,有中文页面,丰富的脚本
- Userscript.Zone (opens new window):新网站,也不错
- OpenUserJS (opens new window):主打收录国外优秀脚本的网站,无中文页面
- Userscript.org:早期的脚本源中最有名的站点,但由于维护不力,导致后面充斥着各种各样的有害脚本,已关站
- Userscripts Mirror (opens new window):Userscript 的镜像站,可以找到一些历史脚本,无中文页面
- 其他:在 GitHub,各大技术论坛里,也有不少的脚本
以油叉为例,打开后可以搜索,也可以按网站进行分类:
找到需要的脚本后,会在介绍页面看到安装(install)按钮:
点击下载脚本后会自动跳转到安装界面,再点击安装就可以了。网页下方也会显示源代码。
# 检查脚本是否生效
安装完脚本后,你可以直接试试该脚本的功能,看看是否生效。
此外,打开对应的网站后,查看扩展弹出窗口,也能看到脚本是否生效:
还可以点击左侧的开关,停用脚本:
还可以展开脚本,查看更多配置,例如不在某个网站内生效:
# 脚本的原理浅析
脚本,正式的名字是用户脚本(user script),也叫油猴脚本,这是因为后续脚本开发时,基本都在沿用 Greasymonkey 的一些基本规范,这些脚本也就统称为「油猴脚本」了。
用户脚本其实是一种注入式的 JavaScript 程序,在网页本身的程序之外,通过一些手段,将用户需要的数据和逻辑注入到当前的网页中,达到修改界面、增加功能等等的目的。
换句话说,JavaScript 能实现的,用户脚本基本也能实现,比如操作页面元素,可以给页面中增加、删减、修改页面元素,最常见的去广告脚本就是这么实现的。
关于脚本推荐:好用的脚本成千上万,后续会专门写几篇文章进行讲解,这里先不表。
# 设置篡改猴
点击篡改猴,点击管理面板:
即可看到管理页面:
可以看到所有已安装的脚本,脚本大小,适用于哪些网站,主页是什么:
还可以在这里对脚本进行编辑,报告 bug,删除等操作。
在设置里还可以对篡改猴进行更多操作。
# 备份油猴
如果你重装/换电脑,重新安装一次油猴脚本也太麻烦了,这里介绍一下如何实现备份。
# 油猴内置的备份功能(推荐)
其实篡改猴已经内置了和备份的功能,只需设置好备份选项即可。
以 Tampermonkey 为例,点击插件,打开管理面板 → 右上角的实用工具:
能看到不同的备份选项:
云备份:支持将数据备份到 Google Drive、Dropbox、OneDrive,需魔法上网。
点击导出,即可将数据导出到云存储,即完成备份;点击「显示备份」,可查询所有备份数据,还提供导入选项:
导入:可以导入 TXT,压缩包格式的备份文件。
压缩包:支持导出为 ZIP 压缩包,内容包括了油猴扩展本身、脚本数据:
文件:导出一个 TXT 文件
文本区:点击「导出」,会出现一长串字符,可以自行复制粘贴到其他地方。想要导入的话,在文本框里粘贴点击「导入」。不太推荐该方式,当脚本多了后字符串会很长,容易造成浏览器卡顿
URL:支持脚本的在线地址导入。例如,你可以将自己的油猴脚本公开,共享给他人。
# 脚本网站的收藏功能
用户注册登录 GreasyFork 后,可以将喜欢的脚本收藏起来:打开脚本详情页,点击收藏按钮即可
收藏后,打开个人中心,即可查看曾经收藏过的脚本。
但该方法也有缺点:
- 需要用户依次打开不同的脚本详情页,重新安装
- 并不是所有脚本网站都支持在线收藏功能(例如 OpenUserJS (opens new window))
更新:收藏按钮后来被 GF 取消了,但其实收藏功能还是有的,在用户中心:
当然,网友也不惯着 GF,开发了一个脚本,添加一个收藏按钮:Greasyfork 快捷编辑收藏 (opens new window)
# 定期备份
对于安装了大量脚本的用户来说,养成良好的备份习惯很重要,建议定期导出备份。
我自己就会每周导出一次:
# 同步功能
Tampermonkey 还支持自动同步脚本,可以在不同的操作系统和浏览器同步。
打开管理面板,在设置页面找到「通用」设置,选择配置模式为高级:
下方会出现同步脚本的选项:
开启后即可随着 Google 账号进行同步(个人感觉得用魔法上网)。
# 油猴浏览器
在浏览器推荐篇里,提过一嘴油猴浏览器,这里展开说说。
由于油猴太好用了,有人基于 Chromium 源码开发出了内置油猴的浏览器,支持 Windows + 安卓,默认内置了油猴脚本和各种常用插件,到手即用。
之前刷到过不少推荐它的文章,个人感觉是刚出品没多久,资历尚浅。
# 油猴脚本 vs 浏览器扩展
同样一个需求,如何脚本和扩展都能实现,应该选哪个?两者对比:
能力 | 占用资源 | 编写/修改难度 | 安全性 | |
---|---|---|---|---|
脚本 | 能力有限 | 少 | 简单 | 高 |
扩展 | 能力更强 | 多 | 复杂 | 低 |
这里得额外说下安全性问题。
上一篇文章提到了有些浏览器插件,包含恶意代码,会窃取用户信息。
其实油猴也有些案例。爆出过不少 窃取个人信息 (opens new window)、替换返利链接的负面新闻。
但用户脚本的源代码审查相比浏览器扩展更为直接透明,选择合适的用户脚本获取渠道、留意脚本的权限请求,能避免大部分坑。如果有编程基础,甚至可以自己检查脚本内容,并且去掉恶意代码部分,或者举报。
综合来看,如果对于一些小功能,建议选择用脚本 + 样式(user style)解决,例如:
- 网盘自动填写访问码,外链免确认
- B 站:干净链接,获取封面,下载动态图
- ......
而对于一些比较复杂的功能,建议选择用扩展,例如:
- 广告拦截(可以自定义规则,导入/导出规则)
- 截图,录屏,翻译,语音转换
- 开发者相关插件
- ......
# 最后
对于一个浏览器而言,自带的功能 + 扩展 + 脚本,就是我们用好浏览器的关键,也正是我之前文章所介绍的内容。
后续,我会推荐一些插件,脚本,已经如何去找,授人以鱼不如授人以渔。