缙哥哥的博客
与你分享我的点点滴滴生活

广告过滤自定义规则语法

过滤规则语法

广告管家提供自定义规则接口,在运行官方过滤功能同时,充许用户自定义规则语法,满足定制化需求

基本过滤规则

通常一条URL 即是一条规则。 但这样过滤范围很小。因此通常使用泛匹配批量过滤。需要注意的是泛匹配容易误杀。以宇宙点播(http://www.yzdb.tv/) 为例, /ad/picad.jpg 为广告图片, logo.png 为非广告图片

http://www.yzdb.tv/ad/picad.jpg
http://www.yzdb.tv/template/qire/images/logo.png

使用|www.yzdb.tv/ad/*.jpg$$image 与 |www.yzdb.tv/*.jpg$$image 规则均可过滤广告,但|www.yzdb.tv/*.jpg$$image 把名为 logo.jpg过滤了。因此规则的作用范围控制很重要。

通配符

广告管家规则语法中, “*” 做为通配符, 能够匹配0长度或任意长度的字符串。 该通配符不能与正则语法混用。 即:如果规则以 “&” 起始 , * 作为正则表达式语义,需要遵从正则表达式规则。

例 1: 拦截人人影视脚本广告脚本(http://www.yyets.com/)

http://res.yyets.com/ads/目录下所有的js 文件均为广告,规则如下:

正则语法: &^res\.yyets\.com/ads/.*\.js$$$js
广告管家语法:|res.yyets.com/ads/*.js|$$js

例 2: 拦截泡泡网图片广告(http://www.pcpop.com/)

http://ad.aijiake.com/adimages/photo/ 目录下所有图片均为广告,规则如下:

正则语法: &^ad\.aijiake\.com/adimages/photo/.*\.jpg$$$image
广告管家语法: |ad.aijiake.com/adimages/photo/*.jpg$$image

例 3: 拦截中关村在线flash广告(http://www.zol.com.cn/)

http://pic.zol-img.com.cn/ 目录下所有flash均为广告,规则如下:

正则语法: &^pic\.zol-img\.com\.cn/.*\.swf$$$403
广告管家语法: |pic.zol-img.com.cn/*.swf$$403

域名通配符

广告管家规则语法中, “%” 做为域名通配符。 方便匹配主域名下的所有子域。

例 1: 拦截搜房网所有子域脚本广告(http://www.soufun.com/)

%soufun.com/adpolestar/door/;*;ct=js;$$js

例 2: 拦截和讯网所有子域图片广告(http://www.hexun.com/)

%hexun.com/lbi-html/ly/*.gif$$image

例 3: 拦截小胖熊酷数码子框架广告(http://www.sosaw.com/threads-305360-1-1.html)

%sosaw.com/ad/*.htm$$html :

域名限定

在规则编写中, 通常会出现这种情况:一条规则只能在特定域名生效,广告管家提供了域名限定功能, 以”::”标识。

例 1: 拦截IT168图片广告,同时禁止规则在 qjwm.com , wsj.com 域生效(http://www.it168.com/)

|ad.*.jpg|$$image::~qjwm.com,~wsj.com

例 2: 拦截久久漫画脚本广告,同时限定规则只在 99comic.com , 99manga.com 域生效(http://dm.99manga.com/)

/jsc/book_*.js$$js::99comic.com,99manga.com

例 3: 拦截bilibili子框架广告,同时限定规则只在 bilibili.tv , bilibili.kankanews.com , bilibili.smgbb.cn 域生效(http://www.bilibili.tv/)

/html/ggad-*.html$$html::bilibili.tv,bilibili.kankanews.com,bilibili.smgbb.cn

定义例外规则

有时泛匹配能够过滤98%的广告,同时存在2%的误杀, 可以通过例外规则语法将%2的误杀修正。管家过滤规则语法中 “~” 符号做为排除标识符。

例 1: 通用规则 /pv.js$$js 误杀风行网(http://www.funshion.com/)脚本。

误杀脚本为:http://q.funshion.com/js.php?jsdate=201212261707&js=core.js,v8.js,tool/pv.js,tool/localStorage.js,tool/user.js, tool/adManager.js,tool/rewrite.js,tool/partner.js,tool/corsair.js,因此添加例外规则:~%q.funshion.com/js.php

例 2: 通用规则/configs/article/*.js$$js 误杀世经文学(http://www.2100book.com)脚本。

误杀脚本为:http://read.2100book.com/configs/article/pagebottom.js ,因此添加例外规则: ~/configs/article/pagebottom.js

例 3: 站内规则%xiaoshuo570.com/scripts/read/*.js$$js 误杀小说570(http://www.xiaoshuo570.com)脚本。

误杀脚本为:http://www.xiaoshuo570.com/scripts/read/page.js ,因此添加例外规则: ~%xiaoshuo570.com/scripts/read/page.js

匹配网址开头/结尾

在规则编写中, 有时会根据起始位置字符或结尾字符判断该URL 是否为广告 。 管家过滤规则语法中 “|” 符号做为起始或结尾限定符。

例 1: 中国广告网(http://www.cnad.com/) ,以 ad. 开头的URL均为广告资源

http://ad.cnad.com/723-90.gif
http://ad.cnad.com/bst100-50.jpg
http://ad.cnad.com/upfiles/hutong100gjx50.jpg

拦截规则: |ad.*.jpg$$image::cnad.com |ad.*.gif$$image::cnad.com

例 2: 中国站长之家(http://www.webmasterhome.cn/) ,以 ad. 开头的URL为广告资源

http://ad.webmasterhome.cn/top-468-60-i-x.html

拦截规则: |ad.*.html$$html::~qjwm.com,~wsj.com

例 3: 游讯网(http://www.yxdown.com/) ,以 gg. 开头的URL为广告资源

http://gg.yxdown.com/gif/top_zhuanti.jpg
http://gg.yxdown.com/html/250x460_20120920.html

拦截规则: |gg.*.jpg$$image::~gg.ma |gg.*.html$$html::~gg.ma

标记分隔符

管家规则中,为了编写方便, “^” 符号通配URL 中特殊符号。 包括: ?,=,/,:,&,# , 例如:

http://ad.abc.com:8080/11.jpg?time=123456

使用管家中标记分隔符: ad.abc.com^8080/11.jpg^time^123456

注释

在管家规则过滤文档中以 “!” 起始作为注释语义。

拦截类型判定

管家规则中拦截类型有:$$403 , $$404 , $$js , $$image , $$html。 如果无法确定类型, 请用 $$403。
其中以 .png , .jpg ,.gif 或着其它图片格式结尾的 使用 $$image. 例如:

%gamersky.com/img/*.jpg$$image
%d1.xcarimg.com/*.jpg$$image
%d1.xcarimg.com/*.gif$$image

其中以 .htm , .html , .php , .asp , .aspx , .jsp 结尾的,或着能够确定是html 结构文档, 使用 $$html。

smmedia.allyes.com.cn/*.html$$html
p.szonline.net/AdShow.aspx?$$html
|adk.funshion.com/adpolestar/*ct=if$$html

其中以 .swf , .xml 结尾,或着其它格式文档 使用 $$403 例如:

%d1.leju.com/*.swf$$403
%news.sohu.com/upload/article/2012/images/swf/*.swf$$403
|video.chinanews.com/flv/gg/*.mp4|$$403
%stat.ku6.com/*.xml$$403

使用正则表达式

如果您熟悉正则语法,您可以使用它精确控制拦截策略。 正则表达式语法请参见 正则表达式学习文档 出于性能考虑,并不提倡。 在规则语法中 以 “&” 起始。

例 1: 西陆网(http://junshi.xilu.com/)

以下部份均为脚本广告

http://js.adm.cnzz.net/s.php?sid=53150
http://js.adm.cnzz.net/s.php?sid=53153
http://js.adm.cnzz.net/s.php?sid=53165

正则拦截:&^js\.adm\.cnzz\.net/s\.php\?sid=\d+$$$js

例 2: 证券之星(http://stockstar.com/)

以下部份均为脚本广告

http://same.stockstar.com/s?z=stockstar&c=214
http://same.stockstar.com/s?z=stockstar&c=303
http://same.stockstar.com/s?z=stockstar&c=303

正则拦截:&^same\.stockstar\.com/s\?z=stockstar&c=\d+$$$js

例 3: 金融界(http://www.jrj.com.cn/)

以下部份均为子框架广告

http://same.jrj.com.cn/s?z=jrj&c=172&op=1
http://same.jrj.com.cn/s?z=jrj&c=173&op=1
http://same.jrj.com.cn/s?z=jrj&c=177&op=1

正则拦截:&^same\.jrj\.com\.cn/.*&op=1$$$html

基本元素隐藏

有时需要对页面某个广告区域隐藏, 广告管家语法中以 “##”标识. 特别提醒:以华商网(http://www.hsw.cn/)为例 id = ‘indexad’ 为广告位, 需对其隐藏,拦截语法为: www.hsw.com###indexad , 需要注意的是: 解析器会将## 前内容加上起始符,终止符 , 等效于 |www.hsw.com|###indexad ,注意:这条规则只对 http://www.hsw.com/ 页生效 , 不会对 http://www.abc.com/aa.html 页生效 。

例 1: 动漫屋(http://www.dm5.com/)广告位隐藏

%dm5.com##.cl760,.cl970,#beitou
%dm5.com/*/##.cl760,.cl970,#beitou

例 2: 飞库网(http://www.feiku.com/)广告位隐藏

www.feiku.com##.adstop1
www.feiku.com/*.html##.adstop1
www.feiku.com/*/##.adstop1
&^www\.feiku\.com/\w+$##.adstop1

例 3: 书香电子书(http://www.sxcnw.net)广告位隐藏

%sxcnw.net##div.lan-adv , .lr-adv
%sxcnw.net/*/##div.lan-adv , #zj , #lbadv , #dibu , .lr-adv

属性选择器隐藏

如果您对 Jquery选择器 较了解,您可以使用Jquery 选择器对元素隐藏。以”@@”标识 , 同样需要注意: 解析器会将@@ 前内容加上起始符,终止符.

例 1: 随时随地无线(http://forum.anywlan.com/)广告位隐藏

forum.anywlan.com@@.wp.a_t
forum.anywlan.com/*.html@@.wp.a_t

例 2: txt小说网(http://www.txtbbs.com)广告位隐藏

bbs.txtbbs.com@@td[width=”183″] img[width=”180″][height=”70″] bbs.txtbbs.com/*.html@@td[width=”183″] img[width=”180″][height=”70″]

例 3: 翠微居(http://www.cuiweiju.com)广告位隐藏

www.cuiweiju.com@@div.main_left.pborder > div.box5 + div.box5 + a , #phead > h1 + a:has(img[width=”465″][height=”55″])
www.cuiweiju.com/*.htm@@div.main_left.pborder > div.box5 + div.box5 + a , #phead > h1 + a:has(img[width=”465″][height=”55″])

打赏
转载请注明来源于“缙哥哥的博客”及本文链接:缙哥哥的博客 » 广告过滤自定义规则语法
分享到: 更多 (0)

评论 抢沙发

评论前必须登录!