Re: [Rio-pm] Metodos de Download em Massa

2017-05-23 Por tôpico breno
Oi Aureliano,

se você está interessado em benchmarks, pode experimentar o LWP::Curl em
vez do Furl, ou se tiver paciência pra ir direto ao metal, Net::Curl ou
WWW::Curl.

O que quer dizer com "truncado"? Se a conexão cai depois de X bytes
baixados (e se vc consegue garantir que o arquivo parcial contém apenas
dados válidos), vc pode baixar só o que falta e depois juntar os dois
pedaços na mão. Por exemplo, se o arquivo parcial foi baixado em
"parcial.tmp":

-8<-
my $ua = Furl->new;
my $res = $ua->get( 'http://exemplo.com/arquivo.tmp', Range => 'byes=' . -s
'parcial.tmp' . '-');
open my $ fh, '>>', 'parcial.tmp;
print $fh, $res->content;
close $fh;
-8<-

(código não testado, estou no celular)

Se o servidor suporta conteúdo parcial (ele responde o primeiro request com
Accept-Ranges), isso deve baixar o resto do arquivo. Idealmente, em vez de
sobrescever o arquivo parcial, vc junta o conteúdo dos dois em um terceiro
arquivo.

Finalmente, se quiser baixar vários pedaços do arquivo em paralelo, pode
experimentar o HTTP::Range e o LWP::Parallel::UserAgent, ou se inspirar
neles e implementar sua própria solução paralela com Furl ou LWP::Curl.

[]s
-b

On 23:26, Tue, 23 May 2017 Aureliano Guedes, 
wrote:

> Ola Monges,
>
>
> Gostaria de saber qual metodo vocês mais gostam para fazer downloads em
> massa.
>
>
> Eu usava muito LWP, recentemente comecei usar uma combinação de
> Parallel::ForkManager e Furl, mas pra meu tipo de dado tem truncado parte
> dos download. (vale uma dica pra lidar com dados truncados?)
>
> No meu caso, eu to fazendo download de mais me milhoes de sequencias, pra
> isso eu sigo a regra do servidor e peço apenas 500 por vez e limito em 10
> fork.
>
> Tem outros metodos que posso usar mas acabo perdendo e muito a eficiência.
> Por isso pretendo testar um benchmark em varias formas diferentes.
>
> Bom, sei que existem ferramentas, BioPerl, etc...
>
> Abraços,
> acpguedes
> ___
> Rio-pm mailing list
> Rio-pm@pm.org
> http://mail.pm.org/mailman/listinfo/rio-pm
___
Rio-pm mailing list
Rio-pm@pm.org
http://mail.pm.org/mailman/listinfo/rio-pm

[Rio-pm] Metodos de Download em Massa

2017-05-23 Por tôpico Aureliano Guedes
Ola Monges,


Gostaria de saber qual metodo vocês mais gostam para fazer downloads em massa.

Eu usava muito LWP, recentemente comecei usar uma combinação de 
Parallel::ForkManager e Furl, mas pra meu tipo de dado tem truncado parte dos 
download. (vale uma dica pra lidar com dados truncados?)

No meu caso, eu to fazendo download de mais me milhoes de sequencias, pra isso 
eu sigo a regra do servidor e peço apenas 500 por vez e limito em 10 fork.

Tem outros metodos que posso usar mas acabo perdendo e muito a eficiência. Por 
isso pretendo testar um benchmark em varias formas diferentes.

Bom, sei que existem ferramentas, BioPerl, etc...

Abraços,
acpguedes
___
Rio-pm mailing list
Rio-pm@pm.org
http://mail.pm.org/mailman/listinfo/rio-pm