关于5/24的所有......

sidki config set的配置、使用,新手入门首选

Moderator: phoenix

ddbb
Moderator
Posts: 425
Joined: Jan 07 2008, 13:30

Re: 关于5/24的所有......

Post by ddbb »

看这个帖子的时候又发现好用了......

真是见鬼了.........太丢脸了.........
ddbb
Moderator
Posts: 425
Joined: Jan 07 2008, 13:30

Re: 关于5/24的所有......

Post by ddbb »

<Match: <td>... Remove/Hide: Ad Containers - Headers 09.06.15 [sd] (d.3 l.3) >
<div class="content">........ad....<br />download<br /><br />...................<br /></div>
</Match>
http://bbs.operachina.com/viewtopic.php ... 87#p172287

一个小BUG......

如上 只要在一些BBS......发表一句里面有 ad 的字符串 都会被这个规则过滤掉.........

为什么在operachina上被过滤 在这里就不被过滤???????

而且在operachina上 我的那句就被过滤了 别人引用我的就没事.......
User avatar
phoenix
Site Admin
Posts: 526
Joined: Dec 29 2007, 16:27

Re: 关于5/24的所有......

Post by phoenix »

看了下对应的规则,应该说不能算是 bug,而是广告检测逻辑的问题。

如果在广告关键字之前是这些字符 (\&[a-z0-9#]+; |[^a-z])+,则会被判定为广告,比如你的例子中的 ........ad,而 ....a...ad 就不会。另一方面, 比如ad 这样的字符串也会被判定为广告,显然是 sidki 没有考虑到非英语系用户。

我会向 sidki 提出这个问题,但要拿出一个绝无误判的通用广告检测逻辑恐怕是不可能的。就那条规则来说,它无法分辨出 <div class="content">........ad....<br />download<br /><br />...................<br /></div> 这样一条语句是论坛中的一个帖子还是网页上的一个 ad block。或许,我们可以增加一条规则将常用论坛程序的帖子的 class 保护起来?

至于别人引用你的帖子没有被过滤,那是因为它没有满足那条规则的其他限制条件。
User avatar
phoenix
Site Admin
Posts: 526
Joined: Dec 29 2007, 16:27

Re: 关于5/24的所有......

Post by phoenix »

phoenix wrote:另一方面, 比如ad 这样的字符串也会被判定为广告,显然是 sidki 没有考虑到非英语系用户。
目前的解决方法是用 [%20-%40%5b-%60%7b-%7e] 代替 [^a-z] 以避免匹配非英语字符。

Code: Select all

[Patterns]
Name = "<td>... Remove/Hide: Ad Containers - Headers     09.06.27 [sd] (d.3 l.3)"
Active = TRUE
URL = "$TST(hCT=*html)(^$TST(keyword=*.(a_ads|a_adcont|a_adcont_h|i_level:[12]).*))"
Limit = 4500
Match = "<(div|td|center)\0(^$TST(script=*)|$TST(comment=1)|$TST(tNoscript=1))[^>]+("
        "(> <(font|br+|img|h[1-6]|p|s(mall|pan|trong)|!--[^\r\n]++--)\6[^>]+)+>"
        "( (^<(!-|code|/(div|td|center)))[^>]+(>)\4)++{0,1} (^<)(\&[a-z0-9#]+; |[%20-%40%5b-%60%7b-%7e])+"
        ")\8"
        "("
        "(a(d(vert(isers|s|)|s|)(^-) |n(nunci|zeigen+ ))|marketplace )(^[a-z0-9ä_+])"
        "|(ad(s\sby\s|vert(enti|isem))|pubb+lici(dad|t(\&[a-z0-9#]+;|[àeé]))|(\w |)sponsor(^ed[a-z])"
        "|(from|visit) our (advertiser|partner|sponsor))[a-z0-9 ]+{0,23} (^[a-z0-9])"
        ")\2"
        ""
        "&("
        "$TST(keyword=(^*.i_adtag:[#*:0].)\7)"
        "$NEST(<$TST(\0),(*("
        "<(!--*-- >|(t(able|body|foot|d|r|h)|div|script|noscript)\5$INEST(<$TST(\5),</$TST(\5) >)</$TST(\5) >)"
        "|(<(/|)(t(able|body|foot|d|r|h)|div)*> )\#"
        "))+*,</$TST(\0) >)$TST(\0=td$SET(#=<td style="height:0;padding:0">)$SET(3=</td>)|*)"
        "|"
        "((^$TST(\7=*))|(^$TST(\7=*.i_adtag:[12].*))$TST(\2=(marketplace|from|visit)*))"
        "$SET(1=-hide)$SET(3=<\0 style="display:none!important"\8\2)"
        ")"
        "($TST(volat=*.log:2*)$ADDLST(Log-Main,[$DTM(d T)]\tWEB Ad-Head\1 \0 \t\6 \4\2 \t\u)|)"
Replace = "\@<span class="Prox ProxCntMisc" style="display:$GET(displayD)">"
          "&#8226;&#160;\0-head\1: \4\2</span>\3"
ddbb
Moderator
Posts: 425
Joined: Jan 07 2008, 13:30

Re: 关于5/24的所有......

Post by ddbb »

关于在一个页面加一个CSS 就是用$SET(sUserCSS=google-translate) 的方式的话.....

默认是会把那个网页其他的CSS屏蔽掉的......规则是Block: External CSS on sel. Sites

可是如果我其他的规则也加了那个规则专用的CSS的话 也会被屏蔽掉.....

考虑到自己加的CSS一般都是在http://local.ptron/ 下的....所以我小小的改动了一下这个规则.....红色是我加的
[Patterns]
Name = "<link> Block: External CSS on sel. Sites 09.04.30 [sd] (d.0)"
Active = TRUE
URL = "$TST(hCT=*html)$TST(sUserCSS=*)"
Bounds = "<link\s*>"
Limit = 512
Match = "\1( rel="+)\3(stylesheet*)\4"
"&(*title=$AV(*)|$SET(2= title="ProxBlockedCSS"))&(^(*href="http://local.ptron/*))"
Replace = "\1\2\3alternate \4"
User avatar
phoenix
Site Admin
Posts: 526
Joined: Dec 29 2007, 16:27

Re: 关于5/24的所有......

Post by phoenix »

ddbb wrote:可是如果我其他的规则也加了那个规则专用的CSS的话 也会被屏蔽掉.....
你的规则是怎么写的?如果没有设置 multi-match 标记的话,替换后的内容会直接发送给浏览器,不会被其他规则再次匹配。
ddbb
Moderator
Posts: 425
Joined: Jan 07 2008, 13:30

Re: 关于5/24的所有......

Post by ddbb »

Code: Select all

[Patterns]
Name = "Images: Lytebox JS and CSS     09.06.19  [ddandyy]"
Active = TRUE
Multi = TRUE
URL = "$TYPE(htm)"
Limit = 10
Match = "</body>$TST(LBOXFLG=true)$SET(LBOXFLG=)"
Replace = "\r\n"
          "<link rel="stylesheet" href="http://local.ptron/lytebox/css/lytebox.css" type="text/css" media="screen" />\r\n"
          "<script type="text/javascript" src="http://local.ptron/lytebox/js/lytebox.js"></script>\r\n"
          "</body>$STOP()"

就是这个.......
User avatar
phoenix
Site Admin
Posts: 526
Joined: Dec 29 2007, 16:27

Re: 关于5/24的所有......

Post by phoenix »

注意到这个了么:
ddbb wrote:

Code: Select all

Multi = TRUE
ddbb
Moderator
Posts: 425
Joined: Jan 07 2008, 13:30

Re: 关于5/24的所有......

Post by ddbb »

哦.........你说的是这里.........

这个是因为那个</body>其他的要用.........

可是想不到还有什么方法........几乎所有的每个页面都有的共通字都被sidki用了.......
User avatar
phoenix
Site Admin
Posts: 526
Joined: Dec 29 2007, 16:27

Re: 关于5/24的所有......

Post by phoenix »

试试匹配:

Code: Select all

(^(^</body>))
表示匹配 </body> 之前那个位置,匹配位置不会消耗 </body> 本身,所以不需设置 multi-match 标记。
Post Reply