V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
ooyy
V2EX  ›  问与答

AdGuard 的过滤规则请教

  •  
  •   ooyy · 2021-07-24 14:07:21 +08:00 · 3482 次点击
    这是一个创建于 1223 天前的主题,其中的信息可能已经有所发展或是发生改变。

    现在用的 AdGuard 作为家里神兽的网页浏览过滤方案

    使用的规则主要是域名和 URL 过滤,如下语法可以屏蔽搜索引擎的关键词“色情小说”

    %E8%89%B2%E6%83%85%E5%B0%8F%E8%AF%B4$empty,domain=bing.com|baidu.com|google.com|so.com|sogou.com,important
    

    但是如果 URL 中不含有这个词汇,就不能屏蔽了,比如通过网页上的链接打开。

    所以我希望能够从网页内容的 Title 里面搜索关键词,如果 Title 中有,就屏蔽整个页面的显示。

    研究它的规则一上午,没找到头绪,哪位大佬指点一下?

    22 条回复    2023-01-21 13:55:24 +08:00
    learningman
        1
    learningman  
       2021-07-24 14:54:43 +08:00 via Android
    title 是 html 里的 head 里面的标签,你还得解析 xml 树。。。
    learningman
        2
    learningman  
       2021-07-24 14:55:04 +08:00 via Android
    要是那个网站没有使用标准 HTTP 端口,你还得实现对 HTTP 的识别。
    yfugibr
        3
    yfugibr  
       2021-07-24 15:01:11 +08:00 via Android
    感觉不是很好做,各家搜索页面不太一样,谷歌一个就有好几种版式。
    其中一种,不一定通用,过滤搜索结果:(需要补充各种近义词,同义词,繁简字)
    www.google.*##div:has(>div>div>a:has-text(色情小说))
    或者屏蔽完全一点,用这种方案?误判会比较多,不知道怎么匹配 title
    *##html:has-text(色情小说)
    yfugibr
        4
    yfugibr  
       2021-07-24 15:10:37 +08:00 via Android
    @yfugibr 指定标题和 meta 标签可以用这两个
    *##html:has(title:has-text(色情小说))
    ​*##html:has(meta[content*="色情小说"])
    dingwen07
        5
    dingwen07  
       2021-07-24 15:12:15 +08:00 via iPhone
    你确定这样真的有用吗?我试了下用任务管理器就能把 AdGuard 干掉
    yangxiaopeipei
        6
    yangxiaopeipei  
       2021-07-24 15:25:44 +08:00
    @dingwen07 #5 路由器那边过滤
    paradoxs
        7
    paradoxs  
       2021-07-24 15:36:25 +08:00
    这样做没用。

    如果你要禁色情就只能让他打开特定的软件 (不能开 safari,不能开带 webview 的)

    如果是 iPhone 可以开引导模式,把那些可以带有无限制浏览功能的 APP 都给禁掉
    ooyy
        8
    ooyy  
    OP
       2021-07-24 15:38:10 +08:00
    @yfugibr 谢谢大佬回复!我晚上回去试试,如果 title 和 meta 管用的话,我就不指定搜索引擎了,对所有网页解析。
    ooyy
        9
    ooyy  
    OP
       2021-07-24 15:40:43 +08:00
    @paradoxs 学校还是有搜索资料的需求,比如做简报、查单词这些的,还有学而思网课,试过用手机,更难管,所以现在用 Windows+AdGuard
    ooyy
        10
    ooyy  
    OP
       2021-07-24 15:41:36 +08:00
    @dingwen07 这个目前神兽还不会,哈哈哈
    等会这招我就布在路由器上
    delete26
        11
    delete26  
       2021-07-24 16:25:29 +08:00 via Android
    神兽?
    Cielsky
        12
    Cielsky  
       2021-07-24 16:47:52 +08:00 via Android
    @delete26 小孩子
    yfugibr
        13
    yfugibr  
       2021-07-24 18:00:13 +08:00 via Android
    @ooyy #4 (情色 /色情 /成人)(小说 /文学) 和对应的繁体最好都加上

    #10 路由器拦截的话操作会麻烦点,不太确定能不能实现
    yfugibr
        14
    yfugibr  
       2021-07-24 18:03:08 +08:00 via Android
    @yfugibr #13 路由器一般只能拦截域名和 ip 规则吧,像这种根据网页内容拦截的恐怕不行
    adguard 我记得有个为其他设备代理的功能,可以了解下,估计配置会比较麻烦
    sephinh
        15
    sephinh  
       2021-07-24 19:00:24 +08:00 via iPhone
    @ooyy #10 开流量你不就都白费了,看小说又不用多少流量
    jayvs5200
        16
    jayvs5200  
       2021-07-24 23:09:11 +08:00 via iPhone
    只是建议: 推荐楼主好好跟孩子谈。提早跟孩子性教育。 跟他说明白。 另外多培养孩子兴趣爱好和出去外面玩也可以。
    jayvs5200
        17
    jayvs5200  
       2021-07-24 23:09:28 +08:00 via iPhone
    一刀切不是什么好办法
    dcty
        18
    dcty  
       2021-07-26 13:58:55 +08:00
    AdguardHome 做不到的,别折腾了。
    建议好好沟通。
    ooyy
        19
    ooyy  
    OP
       2021-07-27 23:24:58 +08:00
    @yfugibr
    这个写法我测试了不行 *##html:has(title:has-text(色情小说))
    后来我又到官网查了一下语法,这个写法可以拦截 80%的网站,但是有些网站不行 $$div[tag-content="色情小说"]
    yfugibr
        20
    yfugibr  
       2021-07-27 23:50:28 +08:00 via Android
    @ooyy 是不是有些关键词没屏蔽到,繁体之类的
    TullyMonster
        21
    TullyMonster  
       2023-01-21 13:53:25 +08:00
    您好,我最近也在学这个,想把 https://kb.adguard.com/en/general/how-to-create-your-own-ad-filters 完整翻译并中国化。但是自己能力有限,想和您交流交流
    TullyMonster
        22
    TullyMonster  
       2023-01-21 13:55:24 +08:00
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1341 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 23:34 · PVG 07:34 · LAX 15:34 · JFK 18:34
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.