我相信这似乎是模块中的一个错误。当我设置$pua->proxy()
时,程序不会通过代理发出。如果我取消它,程序可以通过我建立的IP地址运行。我设置了$pua->proxy(['http', 'https'], 'http://#.#.#.#:#/')
。我测试了代理,它的工作原理。我从http://sslproxies.org抓了一个,我有一个用于测试的squid代理。所以,我很肯定这是UserAgent.pm中的一个缺陷。关于如何解决的任何想法?由于其并行功能,我依赖于此模块,而不是切换到另一个模块。除了工作之外,这个模块完全符合我的要求。 ;-)我稍微挑选了UserAgent.pm,注意到它已被设置,但就我对perl的了解而言,这就是我。
#!/bin/perl
use LWP::Parallel::UserAgent;
my $reqs = [
HTTP::Request->new( 'GET', 'http://www.example.com/' ),
HTTP::Request->new( 'GET', 'http://www.example.com/' )
];
my ( $req, $res );
my $pua = LWP::Parallel::UserAgent->new();
$pua->proxy(['http', 'https'], 'http://XXX:XXXX');
foreach $req (@$reqs) {
print "Registering '" . $req->url . "'\n";
$pua->register( $req, \&handle_answer );
}
my $entries = $pua->wait();