V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
爱意满满的作品展示区。
vance123
V2EX  ›  分享创造

浏览器插件 The Great Filter:过滤你的信息流

  •  
  •   vance123 · 2022-06-19 20:05:59 +08:00 · 2748 次点击
    这是一个创建于 648 天前的主题,其中的信息可能已经有所发展或是发生改变。

    前景提要 https://www.v2ex.com/t/859344

    魔改了全局 ajax 对象,让用户可以任意修改网站上的 API 响应结果,支持同步过滤和异步过滤

    从现在起,你可以过滤知乎结果中的低质量回答、营销号、三无用户了,你甚至可以按照用户注册时间过滤结果。当然,不只知乎,像 twitter 、微博、reddit 、甚至 github 的结果也都是可以修改过滤的,正所谓「 Javascript 的边界,就是 theGreatFilter 的边界」

    项目地址为 theGreatFilter,欢迎提交 issue 和 pull request ,也可以加入 tg 群 实时讨论

    有哪里没讲明白的,或者有好玩想法的,可以在评论区一起讨论

    注:由于重口难调,现在项目只内置了一个zhihuSearchFilter作为范例参考。要添加新过滤器的话,还需要使用者自己动手安装插件和编写 Typescript 代码。

    15 条回复    2022-06-21 17:38:13 +08:00
    batnss
        1
    batnss  
       2022-06-19 21:44:51 +08:00
    手动关注
    yanwen
        2
    yanwen  
       2022-06-19 21:49:21 +08:00   ❤️ 1
    https://github.com/uknfire/theGreatFilter/blob/master/build/monkey.js

    这个 monkey.js 要是改为 monkey.user.js 就好了。。点击 raw 就可以直接安装了 省去了复制黏贴的麻烦
    codingBug
        3
    codingBug  
       2022-06-19 21:49:50 +08:00 via Android
    除了自己,还有谁能定义低质量回答
    runze
        4
    runze  
       2022-06-19 21:54:32 +08:00   ❤️ 1
    @codingBug #3 故事档案局
    jchnxu
        5
    jchnxu  
       2022-06-19 22:14:28 +08:00
    xmlhttprequest 好说,fetch 不一定能改啊,有些在最开始就弄到闭包里去了
    vance123
        6
    vance123  
    OP
       2022-06-19 22:39:48 +08:00
    @yanwen 原来还有这样的用法,第一次知道,已经修改了
    vance123
        7
    vance123  
    OP
       2022-06-19 22:42:05 +08:00
    @jchnxu 插件是在所有其它 script 运行之前就替换了 window.fetch ,应该没问题
    jchnxu
        8
    jchnxu  
       2022-06-19 22:50:00 +08:00
    document_start 也保证不了最开始运行的。。。你可以查一下看看
    vance123
        9
    vance123  
    OP
       2022-06-19 23:09:04 +08:00
    @jchnxu 还是不太理解。根据 chrome 文档, document_start 的行为是"Scripts are injected after any files from css, but before any other DOM is constructed or any other script is run.",不应该是能保证最先运行吗?
    autoxbc
        10
    autoxbc  
       2022-06-20 02:15:08 +08:00
    这个门槛比较高了,还要去读 API 的结构,就算是能胜任开发,大概到直接修改 DOM 就不错了
    fatelight
        11
    fatelight  
       2022-06-20 02:38:55 +08:00
    对百度搜索结果过滤😂
    jchnxu
        12
    jchnxu  
       2022-06-20 08:10:22 +08:00
    @vance123 那可能你是对的。我当时试了半天也没做到,有可能是我哪里弄错了,或者 是 manifest v2 的问题,或者是被 inject 的网站搞了什么骚操作
    zhw2590582
        13
    zhw2590582  
       2022-06-20 09:07:49 +08:00
    使用门槛有点高
    vance123
        14
    vance123  
    OP
       2022-06-20 13:32:48 +08:00
    @fatelight 百度和谷歌的桌面端都是直接把结果嵌入 html 的,不过移动端也许有 API
    vance123
        15
    vance123  
    OP
       2022-06-21 17:38:13 +08:00
    新增了一个异步过滤的范例。简单介绍下,在知乎的搜索 api 结果里只包含回答者的简要信息,但过滤器插件可以拿用户 id 请求更详细的资料,进一步判定搜索结果的质量
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   3389 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 10:40 · PVG 18:40 · LAX 03:40 · JFK 06:40
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.