Z
Zeke Koos
I've written the following script to verify a list of proxies in a
seperate file. It works fine except that I can't get LWP:
arallel to
use different proxies for each request. As it is now when I call
$ua->wait(20), the last proxy in list is used for every request in the
queue. If anyone has a solution please help me out here.
thanks
Koos
#!/usr/bin/perl
use LWP::UserAgent;
use HTTP::Request;
use LWP:
arallel::UserAgent;
open(IN, './proxies.txt') or die "Could not open filename:";
my @proxies = <IN>;
chomp @proxies;
close(IN);
print "Content-type: text/html\n\n";
print "Start test:<br />";
my $ua = LWP:
arallel::UserAgent->new();
for (my $i = 0; $i < @proxies; $i++) {
tt("http://192.168.0.1/",$proxies[$i]);
};
my $entries = $ua->wait(20);
foreach (keys %$entries) {
my $res = $entries->{$_}->response;
print "Answer for '",$res->request->url, "' was \t", $res->code,":
",
$res->message,"\n<br />";
}
print "end";
sub tt {
my ($url,$proxy) = @_;
$ua->max_hosts(25);
$ua->agent('Mozilla/4.5');
$ua->proxy('http', 'http://'.$proxy);
my $req = HTTP::Request->new('GET', $url);
$ua->register ($req);
}
seperate file. It works fine except that I can't get LWP:
use different proxies for each request. As it is now when I call
$ua->wait(20), the last proxy in list is used for every request in the
queue. If anyone has a solution please help me out here.
thanks
Koos
#!/usr/bin/perl
use LWP::UserAgent;
use HTTP::Request;
use LWP:
open(IN, './proxies.txt') or die "Could not open filename:";
my @proxies = <IN>;
chomp @proxies;
close(IN);
print "Content-type: text/html\n\n";
print "Start test:<br />";
my $ua = LWP:
for (my $i = 0; $i < @proxies; $i++) {
tt("http://192.168.0.1/",$proxies[$i]);
};
my $entries = $ua->wait(20);
foreach (keys %$entries) {
my $res = $entries->{$_}->response;
print "Answer for '",$res->request->url, "' was \t", $res->code,":
",
$res->message,"\n<br />";
}
print "end";
sub tt {
my ($url,$proxy) = @_;
$ua->max_hosts(25);
$ua->agent('Mozilla/4.5');
$ua->proxy('http', 'http://'.$proxy);
my $req = HTTP::Request->new('GET', $url);
$ua->register ($req);
}