内容过滤器

我们的 mission 之一是熵减, 在目前这个 stage 我们能做的是

  1. Context builder (最好的呈现有用的信息)
  2. Filter (最大程度的过滤掉无用的信息)

这里我们讨论一下我们对于 Filter 的一些想法. Filter 的主要可以过滤一下几类

  1. 不良信息
  2. 内容农场
  3. 低质内容

并且让这个 Filter 可以做到

  1. 黑白名单提供过滤的灵活性
  2. Public list - 开放给社区参与维护 (或者整合其他的开源项目)
  3. Private list - 允许每个用户自己录入和维护属于自己的filter (手动录入, 文件上传, github url等)

上述是一些简单的思考, 具体的设计会基于这些思考. 欢迎F友参与讨论和提出意见!



下面是一些 reference

广告

https://adblockplus.org/subscriptions

内容农场

https://github.com/danny0838/content-farm-terminator

综合

http://github.com/bcaso/Google-Chinese-Results-Whitelist
http://github.com/bcaso/Google-Chinese-Results-Whitelist

如果你有其他觉得能帮到F搜更好的搭建这个filter的资源, 请回复此帖!



关联

5 Likes

(1)最好是要与uBlacklist的规则兼容。

(2)黑名单的内容可能违法,所以这个对能否推出 Filter 有很严重的影响。或许你们抽出一部分人 Fork uBlacklist 做出一个支持 F 搜的插件,并保持与 uBlacklist 不太大的变动。这样就不会有法律风险。不过这对用户的要求就高了些。

1 Like

(3) 至少要能把搜索结果显示 100 条。
白名单会使得每一搜索页中的内容变得特别少,因为符合白名单的网站,可能不在结果的第一页,因此,要在设置中,把每页搜索结果数调得尽可能大。

(4) uAutoPagerize 这个插件可以支持在自动翻页的同时过滤结果,希望 Fliter 能被动支持。

(5) 关于法律问题的补充:如果一个黑名单中有大量违法网站,那共享者犯法吗?使用它的人犯法吗?如果有人使用它来犯法,那共享者有责任吗?
相关的内容:绿坝 还记得那个最短命的安全软件绿坝吗 - 知乎

内容农场:
每日头条 https://kknews.cc

Repo中的

GHHbD_perma_ban_list.txt -> 和第三个列表相同
uBlacklist_match_patterns.txt -> 正则匹配 path
uBlacklist_subscription.txt -> adblock 格式

:point_up_2: 以上理解是否正确?

我们的打算在 beta 阶段先支持第一个列表 (FQDN) 和第三个规则的导入或者手动输入.

第一个列表的作用可能只是为了生成第三个列表

uBlacklist 的说明:

三种规则:

  1. 通配符
  2. 正则
  3. titile/对于标题的正则/

还有就是解除屏蔽的规则:@:*//*.前缀.域名.后缀/*

因为黑名单规则先于白名单生效,所以可以用 通配符规则 *://*/* 或 正则规则 /.*/ 屏蔽所有网址,然后用 @:*//*.前缀.域名.后缀/* 解除自定义的名单中的网址,这就实现了白名单。

所以不是根域名屏蔽, 是某个资源节点 (path) 或者 title 过滤对吧?

不知道

举个例子

不是直接过滤所有 example.com

而是过滤类似 blogs.example.com 或者 example.com/ad_mobile

或者是标题中包括某些关键词的

:point_up_2: 这个理解对不对?

规则 *://*.example.com/*,是从左往右匹配的,前缀有没有,让用户自己设。

直接填加域名 example.com ,应该属于无前缀的 *://example.com/*,如果用户本想屏蔽所有的 example.com,那用户应该添加 *.example.com, 属于有前缀的 *://*.example.com/* 这应该是用户的失误。

好的! 我们设计一下实现方式!

对于规则 @:*//前缀.域名.后缀/*,后面可以再添加一个可选参数,权重,

变为:@:*//前缀.域名.后缀/*, 1

用做对白名单的排序,值越大,越靠后。

1 Like

我在添加文库类的白名单网站时发现了一个新问题。

如:

https://www.docin.com/p-1706944942.html
https://www.taodocs.com/p-513935010.html
https://www.doc88.com/p-6913810023248.html

他们的文章内容页的 URL 的后缀都是以 p- 开头,

如果只是加上类似规则 @*://*.docin.com/*,

那么他们家的主页,或者类似博客园园荐的二次搜索(腾讯地图逆地址解析_园荐_博客园 ) 也会出现在搜索结果中,这显然不是我想要的,我只要文章,不能再给我一个嵌套的搜索结果。

如果规则变成这样 @*://*.docin.com/p-/*,那豆丁的结果不会显示在搜索结果中,因为他们家没有 /p-/* 的页面。

所以,后缀是 * 比 后缀是 /* 要好用,前者后能替代后者。

白名单或黑名单都是如此。*://*.docin.com/p-*, @*://*.docin.com/p-*

1 Like

https://zh.wikipedia.org/zh-cn/Google可编程搜索引擎

google 在 06 年就推出了 google 可编程搜索引擎,免费的。

白名单搜索测试:

https://cse.google.com/cse?cx=e9a1e480e37a86080&q=

可以设置为浏览器的默认搜索引擎。

加入的域名列表:https://github.com/bcaso/Google-Chinese-Results-Whitelist/blob/main/whitelists/domain_name.txt

F搜可以做一个类似的吗?

对于黑白名单,Google, Bing, DuckDuckgo, Ecosia, Startpage,qwant 可以使用 uBlacklist 过滤,也可以直接使用 google 可编程搜索引擎(可以批量导入)。

干脆直接兼容adguard插件得了 :sweat_smile:顺手加上油猴还有ublock,又一个谷歌浏览器……

adguard 等广告过滤插件,包括油猴。都是事后过滤。就是说都已经将结果拿到手了,再在显示前过滤不需要的结果。

兼容 adguard 规则?就是说结果的过滤还是接收方处理,那就是事后过滤,首先,你拿到的结果数是有限的,所以事后过滤比事前过滤的结果更少,其次,效率不高,受限于你使用的设备,现在的 uBlacklist 还未兼容 Android 浏览器。

事前过滤和事后过滤,当然是事前过滤的效率高,更通用。

cse.google.com + google(uBlacklist) 双重过滤已经完全满足搜索需求。

百度应该也能实现类似的,只是不愿意做罢了。

另外,uBlacklist 的规则与 cse.google.com 的域名规则差不多是通用的。cse.google.com 规则可能更多一些。

这个确实不清楚“事前”和“事后”的区别。受教了:laughing: