Proxomitron之应用展示

本文无意成为Proxomitron的入门文章,也不打算将Proxomitron与流行的广告过滤软件进行对比。如标题所言,我将展示Proxomitron的一些基本和特殊的应用,如果你看完本文有亲身一试的冲动,那么本文的目的就达到了。

Proxomitron在2004年因作者不幸逝世(天妒英才)后即停止了更新,然而其前瞻性的设计使得至今仍无出其右者。事实上,广告过滤只是Proxomitron最基本的功能,其本身更象是个小型的编程语言,通过编制规则,我们可以实现比移除广告更有意义的应用。以下为大家展示冲浪过程中的一些常见问题及Proxomitron的解决之道。

过滤效果展示

广告过滤是Proxomitron的最基本功能,但不是本文的重点,以下稍做展示。以 http://news.sina.com.cn/c/2007-11-20/163614349509.shtml 为例,过滤前,广告和无关内容甚至占据了比新闻内容更多的版面:

UTF-8编码网页中中文的处理方法

原理

中文网页的编码方式主要有2种,GB2312和UTF-8。在GB2312方式中,一个汉字占用2个字节,而UTF-8方式中,一个汉字占用3个字节。如下图,当我们将“一”这个汉字分别用GB2312和UTF-8方式储存的时候,以16进制方式来看,它们的内容是不一样的。

在Proxomitron的配置文件中,一个汉字也是占用2个字节,所以我们可以直接过滤GB2312编码网页中的中文;另一方面,我们不能用2个字节去匹配3个字节,所以不能直接过滤UTF-8编码网页中的中文。

匹配

尽管Proxomitron的帮助文件没有提到,但它实际上提供了以16进制方式按字节匹配的能力,符号为[%xx]。

以上图为例,如果要匹配UTF-8编码的“一”字,表达式为:

[%e4][%b8][%80]

替换

显然,我们无法通过Proxomitron在UTF-8编码的网页中插入以3个字节为存储单位的汉字,但我们可以通过character entity的方式来达到我们的目的。关于character entity的知识,请自行google。

实例

PtronGUI - Proxomitron美化增强版

Proxomitron的默认界面比较简陋,一直为人所诟病,所幸不少爱好者纷纷操刀,对其界面进行了美化,比如Henk的修改版sidki的修改版等。

下面要介绍的是MizzMona修改版

除了对界面进行美化,该版本在不影响程序原有功能的同时,对很多操作进行了增强。以上图为例,MizzMona将常用功能以按钮形式放在了主界面上,并对菜单进行了分类重排。

其他主要改进还包括

Proxomitron RWIN 补丁

目的

如果你使用宽带网络,并在使用Proxomitron后发现下载速度明显下降,那么你需要使用此补丁。 原始讨论

补丁的工作原理

Proxomitron多实例运行补丁

目的

Proxomitron默认情况下只允许运行一个实例,然而某些情况下,同时运行多个Proxomitron实例并各自加载不同规则包或许会更为方便,比如:

  • 一个实例用于常规用途
  • 一个实例用于过滤规则调试
  • 一个实例共享给局域网里的其他用户
  • ...

注意:

  • 请于不同规则包中设定不同监听端口
  • 请通过命令行参数 "proxomitron.exe your.config" 来启动不同实例
Syndicate content