Galera fiz um projeto aqui e estou fazendo download de um zip file, só que não estou conseguindo usando a lib, alguem pode me ajudar?<br><br>Parser.pm<br>{<br> package Parser;<br> use HTML::TreeBuilder::XPath;<br> <br>
sub new{<br> my $class = shift;<br> my $self = {};<br> bless $self, $class; <br> return $self;<br> }<br> <br> sub extractHrefContent{<br> my $self = shift;<br> my $html_content = shift;<br>
my $tree = HTML::TreeBuilder::XPath->new;<br> $tree->parse_content(do { local($/); $html_content});<br> my @array;<br> my $cont = 0;<br> for my $result ($tree->findnodes(q{/html/body/ul/li})) {<br>
my $x = HTML::TreeBuilder::XPath->new;<br> $x->parse($result->as_HTML); <br> my $variavel = $x->findvalue(q{//a});<br> $array[$cont]= $variavel;<br> $cont++;<br>
}<br> return @array;<br> }<br> return 1;<br>}<br><br><br>Login.pm<br>{<br>package Login;<br>use WWW::Mechanize;<br>use MIME::Base64;<br>use HTTP::Response;<br><br>sub new{<br> my $class = shift;<br>
my $self = {};<br> bless $self, $class; <br> return $self;<br>}<br><br>sub request_uri(){<br> my $self = shift;<br> my $url = shift; <br> my $agent = WWW::Mechanize->new();<br> my @args = (<br>
Authorization => "Basic " .<br> MIME::Base64::encode( 'user' . ':' .'password' )<br> );<br><br> # $agent->credentials( ADDRESS, REALM, USER, PASS );<br> my $res = HTTP::Response->new;<br>
$res = <br> $agent->get( $url,<br> @args );<br><br> my $html_content = $res->decoded_content;<br> return $html_content; <br>}<br> return 1;<br>}<br><br><br>ReleaseControlDownloader.pm<br>
<br>package ReleaseControlDownloader;<br>use strict;<br>use Login;<br>use Parser;<br>use Net::Download::Queue;<br><br># URL de requisição<br> my $url = '<a href="http://200.124.194.230/Getnet">http://200.124.194.230/Getnet</a>';<br>
# request URL and get the html content<br> my $login = Login->new();<br> my $html_content = $login->request_uri($url);<br> <br><br> my $parser = Parser->new();<br> my @list = $parser->extractHrefContent($html_content);<br>
<br> my $cont = 0;<br> while($cont < $#list){ <br> my $variavel = $list[$cont];<br> $cont++;<br> # tira o espaço em branco<br> $variavel =~ s/\s//g; ;<br> my $complete_url = $url."/".$variavel;<br>
if($cont==5){<br> my $oQueue = Net::Download::Queue->new() or die;<br> my $oDownload = $oQueue->oDownloadAdd(<br> $complete_url,<br> "C:\\",<br> $variavel, <br>
) or die;<br> }<br> } <br> <br><br><br>Até mesmo se eu pegar um pagina qualquer para fazer o download por exemplo qualquer URL.zip para eu testar.<br><br>Alguem se habilita? GOLFFFFFFFFFFFFFFFFFFFFFFFFFFFF<br>
<br clear="all"><br>-- <br>Atenciosamente,<br><br>Roan Brasil Monteiro<br><a href="http://roanbrasil.wordpress.com/" target="_blank">http://roanbrasil.wordpress.com/</a><br><a href="http://www.gramaro.com.br/" target="_blank">http://www.gramaro.com.br/</a> - Grama em Tapete Salvador Bahia<br>
<br>