privacy-protection-tools / anti-AD

致力于成为中文区命中率最高的广告过滤列表,实现精确的广告屏蔽和隐私保护。anti-AD现已支持AdGuardHome,dnsmasq, Surge,Pi-Hole,smartdns等网络组件。完全兼容常见的广告过滤工具所支持的各种广告过滤列表格式
https://anti-ad.net
MIT License
8.41k stars 727 forks source link

请教编写 #755

Closed Lion-hk closed 1 year ago

Lion-hk commented 1 year ago

https://czzy01.com/网站主页滚动图片包含gif广告, 请教大佬,adg如何编写通用的拦截gif代码 例如拦截网站a、b、c的gif格式图片广告。 我会编写多网站适配一个拦截规则,不会精确的编写拦截gif图片规则, 谢谢大佬的指教。

welcome[bot] commented 1 year ago

Thank you for opening your first issue in this repo. It’s people like you who make anti-AD better!

Lion-hk commented 1 year ago

已星标支持过

MkQtS commented 1 year ago

AdGuard有关于如何编写规则的文档,有兴趣自己去学。

屏蔽特定图片很简单,对于你提到的这个网站,我发现了三张广告图片,屏蔽规则如下:

||img.7629a.com/images/63df50f6fc187c7729ea9b5f.gif
||img.8197a.com/images/63df6b6cfc187c7729ea9b7e.gif
||p3.douyinpic.com/obj/tos-cn-i-dy/712a14a3f9b24ab394651a9428ae9757

anti-AD规则设计是在域名层级拦截广告,也就是要么不拦截要么整个域名完全拦截。单独拦截一张GIF是做不到的,只能拦截GIF所在的整个域名(也就可能屏蔽掉其他有用的内容)。这是工作原理决定的,用快递包裹比喻,anti-AD, AdGuard Home, hosts等工作在域名层面的广告拦截方案只能检查包裹的发件人信息,无法打开包裹检查里面装了什么,可以拒绝来自特定发件人的所有包裹,但对于来自既发广告包裹又发正常包裹的发件人的包裹是无能为力的。

AdGuard、浏览器插件等广告屏蔽方案才具有“拆包检查”的能力,你这里的需求不是anti-ad能做到的。

Lion-hk commented 1 year ago

才了解到anti-AD和adg是两个不太相同的工作原理,忽然感觉有点越域询问了,抱歉也非常谢谢, 我的想法是拦截所有的gif格式图片,我了解域名层级拦截,只是不会那些$image/script^等的代码或者正则拦截规则的编写, 因为我不是程序员,只是网络爱好者,只是觉得稍有可能涉及,自己不会写正确的针对规则,以为你们对口专业所以才冒昧咨询 谢过了,非常谢谢你们的规则提供的贡献