在最近的更新中,微软出品的 Edge 浏览器对其插件目录进行了更新,继二月份支持扩展插件之后,(再一次)率先于 Chrome 支持了用户脚本管理器 Tampermonkey。在这篇文章中,我将继续探讨两个主要话题:一个是 如何在移动端浏览器中使用用户脚本,另一个则是推荐一些 有用的脚本。
????移动端浏览器使用用户脚本
要在移动端浏览器中使用用户脚本,通常有两种途径:一种是使用支持扩展插件的浏览器,并通过安装扩展插件(如 Tampermonkey)来支持用户脚本;另一种是直接支持用户脚本的浏览器。
下面我会简单介绍一下这两种方式。
▍支持扩展插件的移动端浏览器
这里原本打算详细介绍,但发现 jijiali 和克莱德已经做了很好的讲解。所以我将重点放在最近加入支持的 Edge 上。以下是目前支持扩展插件的主要 Android 浏览器列表。
Firefox:使用 Firefox 应用商店,基于 Gecko 浏览器内核。
Yandex:来自俄罗斯的应用,使用 Chrome 应用商店。
Kiwi Browser:基于 Chromium 核心,使用 Chrome 应用商店。
神马浏览器(Sleipnir Mobile):使用自己的应用商店。
Microsoft Edge:基于 Chromium 核心,使用基于精选制的 Edge 应用商店。
关联阅读:在 Android 手机上使用扩展插件,你可以选择这些浏览器。
此外,最近值得关注的一款浏览器是——Iceraven:基于火狐同款的 Gecko 内核开发,支持扩展程序(Firefox 应用商店),如果你下载 Iceraven 会发现这两个界面几乎一样,甚至 Iceraven 还支持火狐账户同步。
题外话:你可能会好奇,Iceraven 和 Firefox 有什么区别呢?
根据 Iceraven 自己的介绍,它有两个核心的区别:
Iceraven 可以访问 about:config 页面来进行修改和调整。
Firefox 在 Android 端限制了一些附加组件,而 Iceraven 支持更多的附加组件。
▍Edge 适配用户脚本管理器 Tampermonkey
2024年2月,Edge 的 Android 版终于支持了浏览器插件功能,移动端的插件商店基于 Edge 加载项商店,采用精选制,最初只开放了 Dark Reader(黑暗模式)、Global Speed(设置播放速度)和 uBlock Origin(广告过滤)三个插件。到11月初,Edge 移动端的支持名单扩大到8个,其中包括了 Tampermonkey。
为什么关注 Edge for Android?
早在三四年前,已有浏览器开始以支持插件、用户脚本作为卖点。Edge 今年才姗姗来迟,确实有些晚。但作为微软开发的浏览器,Edge 可以共享微软的生态能力(账号管理、Drop、密码、书签)。如果你在 PC 环境下也使用 Edge,在 Android 环境下使用是一个不错的选择。
而且,晚来总比不来好。Chrome 作为浏览器行业的老大,这么多年移动版的扩展能力一直没有上线,让许多用户望眼欲穿。Edge 作为基于同一内核的浏览器,推出这个功能颇有种「东厂不敢管的事我管」的气魄。
Edge for Android 扩展使用体验
Edge 的思路类似 Firefox,为移动端呈现了一个精选过的推荐列表,但更为严格,基本上不给一般用户安装额外扩展的机会,一定程度上也能避免出现问题。
在安装完毕后,触发扩展的方式有所不同。Edge 的做法是从底部升起一个弹层,加载插件的 popup 面板。例如,Tampermonkey 可以直接在这个弹层中开关脚本。Kiwi 则是单独加载一个新标签页。相比之下,Edge 的方法体验更好,因为它可以更方便地找到脚本对应的开关。
然而,直接修改 Tampermonkey 的启用状态会拉起一个新的标签页,希望 Edge 能够改进这一点。
尝试了几个常用的用户脚本,它们都可以正常工作,只是在移动版网页显示适配方面略有不足。
值得一提的是,目前 Tampermonkey 已经更新至 5.3.2 版本。该版本已经支持了 Manifest V3。
Manifest 是 Chrome 生态下的 app 和扩展需要遵守的 API 规范。尽管 V3 规范在 2018年宣布,但由于开发者和社区的强烈反对,Chrome 一再推迟 V3 的强制执行时间,直到 23年才宣布 V3 将于 2024年6月开始强制执行。我在 Chrome 市场里提交的那批扩展,因为没有及时更新而被下架了。
V3 带来的核心变化包括但不限于:
取消后台常驻服务,改为非常驻的 Service Worker。目的是降低资源使用。
对网络请求监听的限制,对广告拦截插件而言是重大打击。
不允许支持远程代码,失去插件热更新能力。
用户脚本的 API 仅在开发者模式下才生效。
其中第四点对用户脚本的生态影响很大,原先安装、配置插件的流程只需在商店中操作即可,现在还需要额外打开「开发者模式」。这给普通用户带来了一些麻烦,尤其是不少移动版浏览器中根本没有「开发者模式」的开关。
Edge for Android 目前的做法是在安装 Tampermonkey 后跳出提示要求勾选开发者模式,成功安装后,在扩展页的右上角会多出一个齿轮图标用于模式开关,对一般用户较为友好。
▍支持用户脚本的移动端浏览器
相对而言,支持用户脚本的移动端浏览器更多。对于浏览器开发者来说,只要适配一下 Java 编写的用户脚本就可以了。这些脚本经过多年沉淀,已形成一套较好的规范,加上也有较完善的脚本分发渠道,因此开发者完全不需要考虑应用商店上架、发布、审核等问题。
我在几个官方应用商店中找到了不少这样的浏览器:
Via 浏览器:支持用户脚本。
X 浏览器:支持用户脚本。
M 浏览器:支持用户脚本。
油猴浏览器:顾名思义。
以 Via 浏览器为例,其主打功能是轻量,安装包体积非常小。Via 浏览器刚上线时,不到 200kb 的体积确实非常惊艳。能做到这一点的原因是 Via 没有在安装包内放进浏览器内核,而是使用了手机上 Android 系统的 WebView。
我找到了 Via 官方的插件商店,不知为何里面只有一个插件,名为 Clickable text link,其作用就是让网页中看起来能点的 URL 真的变成能点击的状态。
具体这个插件的代码是以 base64 格式渲染在 HTML 标签中,可以看出以这个插件大概是这样的:
没有按照 User 的普遍格式来写头部,因为这个网页用了一个 Via 浏览器自己的安装方法 “window.via.addon”,传入一个加密过的 JS 就可以安装了。
用正则表达式判断网页中的文本是否有各种 URL 的头部。
如果判断通过了,给原位置插入一个超链接的 HTML 替换。
同时 Via 还支持自定义设置和插件,甚至还有第三方的插件商店。
这个插件同时支持 iOS 平台的 alook 浏览器等,这里我尝试安装一下这个「网页复制限制解除」的插件给大家看一下,点击安装之后自动弹出一个安装器来:
可以看出,这个插件唯一的作用就是给页面中插入了一段 Java 代码,这段代码其实就是网页限制解除这个 User,可以说是非常直接了……
其他的几个脚本也都符合 User 规范,是可以直接运行的那种。
题外话:在试用这一堆浏览器的过程中,我发现了不少浏览器的界面设计惊人地相似,而且对于用户脚本的添加和导入流程也是一样的,不知道大家是不是在互相借鉴?
综上所述,以上所有浏览器可以整理为下面这个表格。移动端浏览器毕竟涉及个人隐私安全等问题,如果你对其他浏览器不太熟悉, 我还是建议你用 Firefox 或 Edge。
▍iOS 平台
说到这里,告诉大家一个令人失望的事实: 上述所有浏览器都是 Android 平台的。
如果你想在 iOS 或 iPad OS 平台上使用浏览器,哪怕是上面提到的 Firefox 或 Yandex,都不支持扩展插件或用户脚本。原因可能是 iOS 平台依赖 WebKit 内核,而不能使用 Firefox 自己的浏览器内核,因此适配起来比较困难。
经过一些搜索,我在商店中找到了几款能支持用户脚本的浏览器:
Alook 浏览器:自定义设置中有一个「Java 扩展」的功能。买断制。
除此之外确实没有什么更好的选择,商店里可以搜出来几个奇怪的浏览器,没有敢下载。所以这里还是以 Gear 为例,展示一下使用方法:
找到你想要安装的脚本,这里还是以「少数派作者激励器」为例,为了更好地演示移动端的效果,我偷偷加了点代码,升到了 0.2 版本。
点击「安装脚本」,由于 Gear 没有一个单独管理脚本的入口,可以点击网页中间的「安装此脚本」进入下一步。Gear 会自动判断脚本,弹出一个安装的确认界面。
这里直接安装就可以了,安装之后,可以访问任意一篇文章,比如油猴脚本使用指南或者本文都可以。你看到我改了什么地方了吗?
脚本推荐这部分稍微显得单薄。和少数派上大量分享浏览器插件的内容相比,油猴脚本的体量其实非常有限。
这里精选了几个有趣的脚本供大家体验,主要是电脑平台使用的脚本,移动端的脚本用得不多。最后还是要提醒大家,脚本的安全性需要自行判断。
▍User+
???? https://greasyfork.org/zh-CN/s/24508-user-show-site-all-userjs
在上一篇文章中我们有讲过,用户脚本除了「天生」能力受限,不同使用者对于脚本的需求其实也各不相同。理论上来说,我们很难找到那种能够满足特别大众化需求的脚本(除非是破解、挂机等本文不便展开的那种)。
因此授人以鱼不如授人以渔,与其在一篇文章中做到穷尽,不如将寻找用户脚本的通法教给大家。如果你刚刚接触油猴插件和脚本、不知道哪些脚本值得安装,User+这个脚本完全可以作为你的入门向导。
安装并启用 User+ 之后,我们唯一需要做的事就是照常浏览网页。User+ 会在网页浏览过程中自动检测可用于当前页面的用户脚本,如果有可用脚本,浏览器右下角则会在加载完成时弹出提示,展开面板后便能看到所有可用的浏览器脚本。
值得注意的是,User+ 的检测理论上来说是针对域名的,因此你很有可能在百度首页检测到用于百度网盘、百度文库等同一域名下其它产品的用户脚本,使用时需要根据实际需求和对应页面仔细甄别;另外 User+ 所捕获到的可用脚本数量不少,大家可以按照更新时间挑选仍在维护且功能稳定的进行安装。
▍网页限制解除(改)
???? https://greasyfork.org/zh-CN/s/28497-%E7%BD%91%E9%A1%B5%E9%99%90%E5%88%B6%E8%A7%A3%E9%99%A4-%E6%94%B9
不少网站会限制网页自带的复制功能,或者不让大家使用右键等,比如 xx 文库。如果经常需要找一些资料,这个脚本应该对你很有用。
其实这样的限制在技术上只是用 Java 阻塞了大家的复制操作,破解起来并不复杂,网页限制解除这个脚本就是为此而生的。其中核心的部分是如下的几行代码:
// 复制到剪贴板
functionsetClipboard( ){
vartext_obj = window. getSelection;
vartext = text_obj. toString;
GM_setClipboard(text);
}
一共有三步:
从网页中获取你选择的文本。
将这部分文本转化为一个完整的字符串。
将这部分字符串填充到剪贴板中。
除了这部分代码外,这个脚本其他大部分的代码都是做网站匹配,以及对抗一些奇怪的网站的防复制逻辑。
这里要注意的是部分网站会写一些定制化的干扰代码,导致无法运行,甚至会影响你的正常浏览,你可以在脚本管理器中暂时关掉这些脚本。
▍HTML5 视频播放器增强脚本
大家经常上网课时,使用的学校网页中的视频播放器功能通常都很简单,甚至可能连倍速播放这种功能都没有。
对于这样的场景,使用播放器增强脚本,就可以提升你的使用体验了,按照作者的说法,这个脚本主要有以下的功能:
支持视频画面缩放、画中画、网页全屏。
支持视频画面截图、调整亮度。
支持快捷键(快捷键操作见上面的链接)。
以网易公开课的页面作为实例,可以看到我缩放并且位移了视频播放器的位置:
需要提醒大家的是,这个脚本对于一些高度定制化的视频网站不起作用,如 Bilibili、爱奇艺等。
以上的三个脚本都是给界面中增加内容的,接下来介绍的三个脚本则是给网页「减负」的。
▍AC-baidu
???? https://greasyfork.org/zh-CN/s/14178-ac-baidu-%E9%87%8D%E5%AE%9A%E5%AE%9A%E5%90%91%E4%BC%98%E5%8C%96%E7%99%BE%E5%BA%A6%E6%90%9C%E7%8B%97%E8%B0%B7%E6%AD%8C%E5%BF%85%E5%BA%94%E6%90%9C%E7%B4%A2-favicon-%E5%8F%8C%E5%88%97
或许是受商业策略调整的影响,有一段时间百度和 Google 都开始对搜索结果进行重定向,对用户来说,点开搜索结果后被迫二次跳转的体验很差,而且也无法方便地复制搜索结果中的链接来直接使用。
使用这个脚本就可以解决这个问题。作者还写了大量的附加功能,比如搜索页面背景,重新写了界面样式,支持双排、移除广告等。为了让大家看到区别有多大,这里我把能打开的所有选项都打开了。
说到搜索结果过滤,之前的「小 x 知识网」大家应该还有印象。SHY在 清理「内容农场」,还你清爽的 Google 中文搜索体验 这篇文章中也提到了这款用户脚本。
但 AC-baidu 这个脚本在加载过程中会闪动一下,往往会先加载原格式的界面(零点几秒内),然后再展示成右侧的界面,对这一点比较介意的同学可以考虑别的过滤脚本方案。
▍药方 (YAWF)
药方的全称是 Yet Another Weibo Filter,主要的功能是精简微博网页版的功能,如推广、粉丝头条、爱问医生等。
药方的配置项目也比较多,安装之后点击顶部的漏斗状图标就能看到:
这里有非常多的选项,可以过滤不想看的微博或作者,也可以屏蔽界面中指定的模块。这里我为了找一个极致清爽的界面,勾选了全部,界面果然干净了不少。
对了,如果你已经切换到了新版微博,药方的支持效果可能会差一些。
▍知乎增强
这个脚本和药方很类似。知乎网页端受商业化「洗礼」,充斥着不少影响阅读的功能和模块,用这个脚本可以优化一些功能,比如移除登录弹窗、首页视频,屏蔽盐选内容,净化标题信息,站外直接跳转等。
下图左侧是优化前的界面,右侧是优化后的,可以看到精简了不少内容。
过去几年上知乎比较多,这几年知乎用得越来越少了。
▍结语
不得不承认,随着技术的发展,桌面端的用户脚本功能慢慢被浏览器插件所替代,好在移动端的用户脚本还能继续发光发热一段时间。
如果你找不到合适的脚本,可以考虑学习一些简单的 Java 小知识,动手写几行代码就能定制一个最符合你需求的用户脚本。
原文链接:
https://sspai.com/post/70571?utm_source=wechat&utm_medium=social
作者:kokdemo
责编:克莱德
/ 更多热门文章 /返回搜狐,查看更多