2 ###APPNAME: parse_proxycn
4 ###APPDATE: 2009-01-24 01:42:36
6 ###APPDESC: parse_proxycn
8 ###APPEXAMPLE: parse_proxycn
12 #ENV variable MUST be defined somewhere,
13 #FOR perl to search modules from,
15 use lib
$ENV{XR_PERL_MODULE_DIR
};
17 use MyPlace
::Script
::Usage qw
/help_required help_even_empty/;
18 exit 0 if(help_required
($0,@ARGV));
19 #exit 0 if(help_even_empty($0,@ARGV));
25 if(/\<TD class=\"list\"\>\s*(HTTP|SOCKS)\d*\s*\<\/TD\
>/i
) {
27 $type = "PROXY" if(uc($type) eq "HTTP")
30 my @match = $_ =~ /clip\('([\d\.]+:\d+)'\)/g;
32 $proxys{"$type $_"}=1;
37 print join("\n",keys %proxys),"\n";
39 my @proxys = keys %proxys;
41 push @pac,"var count=0;\nvar index=0;\nfunction FindProxyForURL(url, host){";
42 push @pac,"\tvar proxys = new Array();";
43 push @pac,"\tvar proxys_max = $#proxys;";
44 foreach my $idx(0 .. $#proxys) {
45 push @pac, "\tproxys[" . $idx . "]=\"" . $proxys[$idx] . "\"";
47 push @pac,"\tcount++;\n\tif(count>3){count=0;index++;}\n\tif(index>proxys_max){index=0;}}";
48 push @pac,"\treturn proxys[index];";
51 print join("\n",@pac),"\n";