世界之窗论坛's Archiver

mutalisker 发表于 2007-1-9 18:38

TheWorld 2.0HTML过滤功能介绍

TheWorld2.0的HTML过滤功能是基于TCP/IP协议层实现的过滤功能,比起1.x的基于IE内核接口的过滤方式,功能更强大,效率也更高,并且支持使用正则表达式.
由于是在网络通信层进行的过滤,所以只能过滤从服务器发来的数据,而有些页面从临时文件中直接读取,则不会被过滤,同理,从服务器发来的数据被过滤后的结果会被TW的IE内核保存到临时文件,这时如果关闭过滤或者使用其他浏览器,会发现过滤效果依然存在,刷新一下才会更新

过滤功能支持白名单,过滤项以@@开头即为白名单,例如: @@*ad*
过滤功能支持正则表达式过滤url,过滤项前后各加一个/,例如/\wad.*/

使用通配符方式的黑名单过滤功能
TheWorld2.0的HTML过滤功能兼容1.x的设置方式,黑名单在高级选项中可以设置,黑名单支持*号和?号的通配符匹配,在ini中的表现为
例如
[filter]
url0=*ad*
url1=*icast*
url2=@@*adm*
url3=/\wad.*/
[color=red]过滤内容替换可以在ini中指定(正式版中会提供设置入口)[/color]
例如:
[options]
HTMLReplace=<span style='font-size:9pt'>Filtered Ad%s_url</span>
其中%s_url为被过滤的标签的src



下面是介绍的重点,建议不了解正则表达式使用方法的朋友无视
[color=red]基于正则表达式的HTML内容过滤功能[/color]
通过对HTML内容的过滤,可以过滤掉网页上一些比较特殊的广告,也可以实现一些比较特殊的功能(比如图片的防盗链)
过滤项的添加和黑名单类似,在ini的filter节中,从ex0-ex23,上限暂定为24个,每一个过滤项可以单独指定被替换的内容,从re0-re23,详见下面的例子
[filter]
ex0=<table.*?width="25%.*?>(?:.|\n)*?[url]http://ma.baidu.com/ma/rcv/click.php(?:.|[/url]\n)*?<\/table>
re0=<span style='font-size:9pt'>Filtered Ad</span>
ex1=(?:<br>)*<img\ src="images/common/sigline.gif(?:.|\n)*?</div>
re1=
第一个过滤的内容是baidu搜索页面右侧的广告
第二个过滤的内容是Discuz论坛帖子中的每个人的签名
过滤功能还可以实现对HTTP协议头的过滤,过滤项是在ini的filter节中,从exh0-exh23,替换内容为reh0-reh23,过滤方法和上面的例子中一样

过滤功能由于刚刚推出,所以重点暂时还在于功能的稳定性.在以后的版本,还会不断加强过滤功能,欢迎大家多提宝贵意见

liutwqc 发表于 2007-1-9 18:40

已经有..好几位..网友反映.
新的版本....
一点开.就内存报错.打不开..
用不成.
..想到的方法.都试过了.........不行.

tinham 发表于 2007-1-9 19:24

不是很明白,,,,,

最好有高手做了共享!!

laha369 发表于 2007-1-9 19:29

期待共享啊:shy: :loveliness:

needed 发表于 2007-1-9 19:30

进来学习ing:lol:

tcxk1986 发表于 2007-1-9 19:44

看的一头的雾水:)

靖哥哥 发表于 2007-1-9 19:48

如何使用白名单修正?

engyc 发表于 2007-1-9 19:48

不敢弄,怕出錯連好的頁面也過濾掉了

remyxo 发表于 2007-1-9 20:07

**** 作者被禁止或删除 内容自动屏蔽 ****

odrip 发表于 2007-1-9 20:11

:mad: :mad: 搞个过滤规则来看咯

没有规则用得好:cold: :cold: 哦

Aycox 发表于 2007-1-9 20:13

讨厌广告可不得不学习

tianyu21ty 发表于 2007-1-9 20:51

看得我头大大的,可惜还是没有看懂:cold: :cold: +o(

xym110 发表于 2007-1-9 20:53

:wait: :wait: 希望广告过滤黑名单和配置ini分离...
方便设置下载网友广告过滤黑名单

king_hh 发表于 2007-1-9 21:05

看不明白~~~~~:cold:

亡灵法师 发表于 2007-1-9 22:25

[quote]原帖由 [i]xym110[/i] 于 2007-1-9 20:53 发表
:wait: :wait: 希望广告过滤黑名单和配置ini分离...
方便设置下载网友广告过滤黑名单 [/quote]

多一个文件估计得有不少人反对。

Godot 发表于 2007-1-9 22:54

问题1: TW在"re0"中替换掉的应该是"ex0"中括弧保存匹配部分吧?

问题2: 本地发出的POST或者GET请求内容是否被过滤?


[color=red]//by mutalisker[/color]
[color=red]re0中替换的是ex0整个匹配的部分,这个操作和vbscript的replace函数功能相同,可以参考使用[/color]
[color=red]本地发出的部分暂时不支持过滤,能过滤的是接受到的数据.如果有对本地post,get数据过滤的需求,请详细说明,咱们一同改进[/color]

xym110 发表于 2007-1-10 00:15

[quote]原帖由 [i]亡灵法师[/i] 于 2007-1-9 22:25 发表


多一个文件估计得有不少人反对。 [/quote]
:wait: :wait: 也有很多人接受啊...
黑名单共享方便很多

[color=red]//by mutalisker[/color]
[color=red]黑名单功能最后要做成什么样子我们也在考虑中.在我看来,黑名单功能对于大部分用户意义不大(我们一向认为需要手动维护的过滤方式不适合普通用户用),基于这个想法,不太可能在tw主程序中增加太多对黑名单功能的操作.[/color]
[color=red]也许提供一个独立的黑名单管理程序更好一些.大家不妨说说看法[/color]

GreenBrowser 发表于 2007-1-10 08:41

看来还得自己动手学习一下 呵

123456 发表于 2007-1-10 11:19

[quote]原帖由 [i]xym110[/i] 于 2007-1-9 20:53 发表
:wait: :wait: 希望广告过滤黑名单和配置ini分离...
方便设置下载网友广告过滤黑名单 [/quote]

设置一个导入黑名单功能多好的,哈哈,又户多文件。

1984213 发表于 2007-1-10 11:24

什么时候能有做好的黑名单发上来啊!

Golu 发表于 2007-1-10 15:21

[quote]原帖由 [i]123456[/i] 于 2007-1-10 11:19 发表
设置一个导入黑名单功能多好的,哈哈,又户多文件。 [/quote]

别忘了还得有导出黑名单功能

leel 发表于 2007-1-10 16:41

我用AdMunch

pukeyu 发表于 2007-1-11 03:43

哈哈 不懂

guoyin 发表于 2007-1-11 12:49

我也不懂,不懂就耐心的学吧!:D

页: [1] 2 3 4

Powered by Discuz! Archiver 7.2  © 2001-2009 Comsenz Inc.