问题描述
Twitter 已开始添加穿插正常主页时间线的“关注主题”帖子。我想过滤掉它们。 Twitter 会主动混淆时间线来源,以阻止此类努力。
以下是我对理论的理解:规则应该能够识别包含深度嵌套子项的帖子,其中包含文本“关注主题”,如下所示:
然后它应该过滤包含这样一个跨度的帖子,这将是这个父级
在实践中我做到了
twitter.com##div:nth-child(n):has-text(/\bFollow Topic/i)
但是这会过滤任何帖子,如果它在其中的任何地方提及“关注主题”一词,包括例如在正文中,偶尔会打断整个时间线。
我应该如何为 ublock origin 编写规则来过滤掉这种东西?
解决方法
要过滤包含另一个节点的节点,您可以使用 xpath() 函数。
例如,要隐藏包含推荐主题的文章,我使用:
twitter.com##:xpath(//article[.//span[starts-with(@aria-label,"Recommended Topic:")]])