在TamperMonkey发布一个脚本


Tampermonkey(油猴)作为一个用过了都说好的浏览器插件,确实用过的都说好废话

好用的油猴

油猴本质是一个脚本管理工具,他会在符合设定的条件的网站加载后立即执行设定的脚本。脚本可以是js和css。这就很有用了。比如打开百度搜索之后运行一段去广告的脚本,就可以获得一个干干净净无广告的百度。

该脚本的主要功能是去除百度系网站页面和搜索结果中的绝大多数广告。
已覆盖:百度搜索、百度资讯、百度视频、百度百科、百度知道、百度文库、百度图片、百度贴吧、百度地图、百度经验、百度翻译、百度网盘、一刻相册、百度游戏、百度爱采购、百度宝宝知道、好看视频等
关于侧边栏(百度热搜),对于是否保留大家各执一词,所以脚本增加了一个控制侧边栏显示状态的开关,默认隐藏

该脚本还有几个其他小功能:
将标注为“官网”的搜索结果移动至第一条
去除某些搜索结果中的“安全下载”按钮
自动展开百度知道回答

引用自脚本【百度系网站去广告】的介绍

用了以后妈妈再也不用担心我搜索Steam的时候第一页都是“蒸汽平台中文版”了。

当然除以上提到的内容以外,它的功能还要强大得多。油猴只是提供了思路和平台,剩下的就是看各路大神表演了:

冰山一角

吹捧油猴的话就不多说了。说得还少吗?啪!写这篇文章是因为,我用了这么多年油猴,居然从没想过写个脚本方便自己。好,说写就写。

写一个脚本

前天想着在Konachan上搜点壁纸给博客用,刚开始没往心里去,后来越用越感觉不太对劲。怎么广告比图片还大?而且还都是一些成人广告,不过想想人家本来就不是全年龄的,但是重口就是你的错了。

过于重口码一下

就是你了!在Greasy Fork上大致搜了一下,还没有用于此网站的同功能脚本,那就由我来做吧。对了,还没说过Greasy Fork。它就是给各路大神发布脚本的地方。大家可以自由上传自己写的脚本,安装进油猴还可以自动更新。不仅如此,用户还可以编辑别人发布的脚本,让它更适合自己。

Greasy Fork中文主页

既然目的是去广告,那就先看一下这个广告的结构。

这个广告居然是简单粗暴地加了一个iframe框架。不过这样确实方便,想换广告的时候不需要动这个页面,直接换掉广告内容就好。很好,这个广告又为我开拓了折腾博客的思路。谢谢,然后,再见。

在源代码里查找了一下,除广告外,没有其他框架了。那就直接查找框架,然后处理掉。

var iframes=document.getElementsByTagName("iframe");
for(var i=0;i<iframes.length;i++)
{
    iframes[i].remove();
}
JavaScript

放进控制台跑一下,不错,广告消失了一个。一共三个框架,那就运行三次好了。懒得动脑筋去写循环了,直接把代码复制了三次。看一下运行后的结果。

广告消失术

看起来很成功呢,接下来就把它放进油猴吧。

点击插件栏的油猴图标,选择添加新脚本。

打开的界面是这样的:

注释的部分填写各种参数和介绍,下面function里就是脚本了。

// ==UserScript==
// @name         这里填脚本名称
// @namespace    
// @version      这里填脚本的版本
// @description  这里填简介
// @author       这里填作者名
// @match        这里填匹配的页面,支持正则。比如*://*baidu.com/*表示所有百度的页面都运行此脚本
// @match        不止一个页面就多复制几行match就好
// @icon         脚本图标,默认使用你点击添加脚本的页面的favicon
// @grant        none
// ==/UserScript==

(function() {
    'use strict';

    // 脚本粘贴到这里
})();
JavaScript

写好之后点击左上角的文件-保存到磁盘,然后会自动下载刚才写好的js文件。

然后再上传

此时点击保存,这个脚本就已经安装进油猴可以正常使用了。如果想发布这个脚本让大家一起用,就需要用到Greasy Fork了。在Greasy Fork注册一个账号,登录后点击右上角自己的用户名,点击发布你编写的脚本。

在第一个框代码的部分下面点击选择文件上传刚才保存的脚本。第二个框填写详细介绍和使用说明,支持HTML和MarkDown语法,可以上传图片。

下面可以选择是否公开脚本,是否有成人内容。标记成人相关的脚本不会在脚本列表中展示。而是在里站Sleazy Fork,一个完全相同的网站,但只展示有年龄限制的内容。完成后直接点发布脚本会报错,说你缺少版权信息// @license MIT,懒得研究的话,直接复制下来粘贴到你代码前面一堆注释的地方就好。然后发布。

至此,脚本就发布完成了。啪叽啪叽!

Powered by WordPress. Theme by Alx.