网页修剪器--adblock plus

突然发现简书这个网站,可以发文章上去,挺不错的。试着写一篇?

Preface

我们每个人都是用户,而用户的活动似乎总是被引导。当引导得有点严重的时候,说难听点,那就是被设计了、被强奸了。对陌生景点一脸懵逼的时候,有导游讲解是不错的。然而有的导游不止于此,他们还要向你推销更多不知道是什么玩意儿的东西。

人们在阅读的过程中,自己能找到自己的兴趣点并进一步搜索。而很多网站致力于阻止用户这样做,方式如增加站内链接的出现,有事没事加点链接,理由是方便你访问。将不相关内容列出来,理由是方便你访问。对于可能有点相关的,那更要罗列出来了。

当一个东西越容易访问,那你就越容易去访问,因为运动的摩擦力越小,所以惯性的效果也维持得越久。特别是当你有兴趣时,你相当于处在滑坡中,显然身不由己。

在这样一个信息爆炸的时代,当一个人发现太容易获得低相关高松散信息时,我觉得他应懂得给自己增加点获取信息的阻力。要尽量收束,谨慎扩展,因为一个链接后面,总是有无穷无尽的链接。

在浏览器领域,Adblock Plus显然为此做出了一份贡献。网站已经陈列,而明白信息推销的用户,手上已经握了一把镰刀,或者说一瓶除草剂——Adblock Plus。

如果了解一点CSS,会发现Adblock Plus非常强大,不过我们还是要处处培养自身定力,毕竟防不胜防。有些链接看起来很吸引人,不过在点进去之前,不妨追究以下几个问题:

  • 它能给我什么?
  • 我希望从中得到什么?
  • 我需要吗?

至于然后怎样,那就是你自己的事了。




分割线


接下来写一点Adblock Plus的语法,谨慎阅读。

Grammar

Basic filter rules

使用通配符,如http://example.com/ads/banner*.gif。有时候图片文件是集中存放在一个文件夹下的,可以直接将此文件夹屏蔽,例如http://example.com/ads/
!表示注释。

Defining exception rules

如果规则屏蔽了一些不该屏蔽的元素,你可以选择使用异常规则创建例外而非直接删除规则。前缀@@ 来表示异常规则,除此之外,异常规则与筛选规则没有什么不同。

Matching at the beginning or end of an address

管道符|被用于表示,呃,一堵墙?如果被用在元素地址末尾,意思是此处是结束,后面不得出现其他字符,否则不匹配。

比如,

filter block allow
swf http://example.com/annoyingflash.swf http://example.com/swf/index.html
http://baddomain.example/ http://baddomain.example/banner.gif http://gooddomain.example/analyze?http://baddomain.example

如果想同时屏蔽

  • http://example.com/banner.gif
  • https://example.com/banner.gif
  • http://www.example.com/banner.gif

可以通过在过滤器前面放置两个管道符号来实现这一点,确保匹配域名的开头:

||example.com/banner.gif

Marking separator characters

使用^表示分隔符。分隔符不包括字母、数字和下列字符

  • _
  • .
  • %

例如,这个网址:http://example.com:8000/foo.bar?a12&b

可以被下来过滤器匹配到

  • ^example.com^
  • ^foo.bar^

Content Filters

内容过滤规则结构如下

<domains><separator><body>

domain要写完整。下面是separator和body的一些可能值

Separator Type Body content
## Element hiding CSS selector (domains may be empty)
#?# Element hiding emulation Extended CSS selector
#@# Element hiding exception Selector
#$# Snippet filter Snippet

##表示隐藏元素的意思,#?#表示扩展选择器,#@#是用于选择器的例外语法。

分隔符##标记了一个元素隐藏规则,而其余部分(主体)是一个 CSS 选择器,用于标识需要隐藏的元素。 任何CSS 选择器语法均可用。

~表示该规则不适用于该域的页。

一些示例

filter 作用
##table[width="80%"] 隐藏宽度属性设置为80% 的表
##div[title*="adv"] 隐藏所有带有 title 属性包含字符串“ adv”的 div 元素
##div[title^="adv"][title$="ert"] 隐藏title 属性以“ adv”开头、以“ ert”结尾的 div 元素。

Extended CSS selectors (Adblock Plus-specific)

有时标准的 CSS 选择器不足以隐藏广告。 对于这些情况,adblock plus添加了一些新的选择器,即:

  • :-abp-has()

    判断元素中是否具有什么内容。-abp-has(> div > a.advertiser)

  • :-abp-contains()

    选择器根据样式表属性选择元素。

    div.sidebar > span:-abp-contains(Advertisement) selects the elements within a ``, with a class of sidebar that contains the word "Advertisement".

  • :-abp-properties()

支持通配符

-abp-properties(width:*px;height:250px;)

支持正则:/expression/

:-abp-properties(/width:30[2-8]px;height:250px;/)

这些扩展选择器以 #?#开头。需要注意的是,这样做会对性能产生影响,所以要尽量节省。

Note: When using the background-color property, use the rgb() notation. For example, instead of :-abp-properties(background-color: #3D9C4F;), use :-abp-properties(background-color: rgb(61, 156, 79)).

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 204,793评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 87,567评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 151,342评论 0 338
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,825评论 1 277
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,814评论 5 368
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,680评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,033评论 3 399
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,687评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 42,175评论 1 300
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,668评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,775评论 1 332
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,419评论 4 321
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,020评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,978评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,206评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,092评论 2 351
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,510评论 2 343

推荐阅读更多精彩内容