Habr的新机会:如何退订用户和广告博客

Habr上的许多人都如何过滤个人作者和公司博客的帖子。 最近,此功能已出现-但是,这需要最新版本的Adblock阻止程序。


对于那些不想进一步阅读的人,我只提供Adblock过滤器代码,供您取消订阅其中一位作者的帖子。

geektimes.ru#?#li:-abp-has(a.user-info[href*="username"]) 

是的,这并非在所有浏览器中都有效,并非在所有情况下都适用。 对于那些对它如何工作以及何时工作感兴趣的人,我请一只猫。

随着Adblock的新版本中所谓的CSS伪选择器的出现,出现了这种过滤的可能性,这在CSS中并不常见。 如果满足孩子中的任何条件,它们使您可以锁定父母。

首先,您需要确保您的浏览器和adblock版本支持此功能。 新语法可在适用于Chrome和Opera的Adblock Plus 1.13.3及更高版本中使用。 同样,从11月6日开始,该机会出现在Firefox的Adblock Plus 3.0中。 但这仅适用于新的浏览器,例如,我在Chrome版本57中有这样的选项,但是在我通常使用的Chrome版本49中,不支持该功能。

您可以通过输入过滤器geektimes.ru#?#img来验证这一点。 geektimes.ru#?#img如果同时geektimes.ru#?#img站点上的所有图片,则包括新功能。 如果没有任何变化,则需要更新。

伪CSS选择器是如何工作的,请参见“扩展CSS选择器”部分。 也有例子。 首先,编写过滤器时,需要将domain.com##selector替换为domain.com#?#selector (必须输入域名)。 该语法包括伪选择器机制。 选择器本身的格式为:-abp-properties():-abp-has()括号中的元素使用与广告单元本身相同的语法。 还支持伪选择器的嵌套。

因此,要屏蔽整个帖子,只需在其中找到至少一个特征字段即可,例如带有作者姓名的href属性,以便可以屏蔽整个帖子。

例如,阻止li元素,该元素中包含一个带有default-block__header-link类的链接,而该链接又指向带有单词megapost的URL:

 geektimes.ru#?#li:-abp-has(a.default-block__header-link[href*="megapost"]) 

应当记住,此类伪选择器的工作相当缓慢,因为它们只是对CSS中不存在的属性的模仿,与浏览器如何解析此CSS有点矛盾。 详细描述了为什么会发生这种情况。 因此,包含此类规则会大大减慢页面的加载速度。

对于那些到这里阅读过这篇文章的人来说,还有一个额外的好处:退订giktimes所有广告博客的食谱(尽管我不建议这样做:在博客中有非常有趣的博客,例如Yandex的博客)

 geektimes.ru#?#li:-abp-has(a.inline-list__item-link[href*="company"]) 

现在,您可以轻松创建自己的过滤器-例如,按等级,视图数或评论数过滤文章。

我希望借助新的Adblock功能,读者的斗争将达到一个新的高度-现在公司将不得不撰写高质量的帖子,而不是从其网站上复制广告评论。

Source: https://habr.com/ru/post/zh-CN408239/


All Articles