[SP-pm] Web Crawler com proxy lento
Marcio Ferreira
marciodesouzaferreira at gmail.com
Thu Jan 30 18:15:39 PST 2014
Lucas, você já tentou randomizar seu UserAgent a cada request? (ou mesmo
qualquer parametro que altere seu fingerprint?)
Usar um pool de servidores necessita um trabalho mais orquestrado(com uso
de filas, talvez *semaphore*), talvez pequenas alterações no código já
resolva seu problema.
Recomendo fortemente o YADA. Stan++
Umas configurações simples podem te ajudar:
my %conf = (
http_response => 1,
max => 25,
common_opts => {
FOLLOWLOCATION => 1,
TIMEOUT => 20,
# VERBOSE => 1,
SSL_VERIFYHOST => 0,
SSL_VERIFYPEER => 0,
PROXY => 'localhost:9050',
PROXYTYPE => Net::Curl::Easy::CURLPROXY_SOCKS4,
USERAGENT => WWW::UserAgent::Random::rand_ua("browsers")
});
YADA->new( %conf );
Essa configuração faz requisições via TOR(já mencionado pelo Stan) e ainda
altera randomicamente seu UserAgent.
Outra recomendação também é você alterar os UAs do WWW::UserAgent::Random,
o módulo não é atualizado a muito tempo(então só possui browsers antigos) o
que torna simples esse hack.
Abs!
Em 30 de janeiro de 2014 13:40, Leonardo Ruoso <leonardo at ruoso.com>escreveu:
> LVS é seu amigo!
>
> Se o IP é de um pool de servidores, então é só colocar para sair
> alternadamente por todos os IPs.
>
> Se o IP é de dialup, aí é mais complicado, você precisaria de uma VM em
> qualquer lugar, Amazon, Linode, etc e faz a mesma coisa, roteamento com
> LVS, mas usando NAT no LVS e configurando o LVS para fazer rotação de IP.
>
> Provavelmente a performance vai ficar muito maior que com o tor, com a
> desvantagem de que se você não consegue justificar um pool de IP para você
> o provedor lhe fornece cada IP por um pequeno custo mensal.
>
>
>
>
>
> Em 30 de janeiro de 2014 08:20, Solli Honorio <shonorio at gmail.com>escreveu:
>
> Lucas,
>>
>> Com relação a lentidão, estou assumindo que antes vc fazia o acesso ao
>> site na mesma localização (o teu script roda no Brasil para acessar o
>> servidor que está no Brasil também) e com o proxy passou ter acesso via
>> outra região (EUA por exemplo).
>>
>> Se for isto, só esta mudança vai fazer você altera a latência de uns 30
>> ms (no meu ambiente tenho latência de 3 ms) para qualquer coisa começando
>> com 300 ms. Ou seja, a simples troca de ponto de acesso faz com que o tempo
>> de viagem aumente em 10 vezes (no mínimo).
>>
>> Contra latência não muito o que fazer, mas recentemente tive um ganho
>> interessante nos meus scripts trocando o
>> LWP::UserAgent pelo WWW::Curl::UserAgent.
>>
>> O Stan tem razão, diante do fato, aparentemente o paralelismo parece ser
>> a melhor alternativa.
>>
>> Para aumentar o paralelismo, recomendo fortemente utilizar
>> o Parallel::ForkManager.
>>
>> Abraços,
>>
>> Solli Honorio
>>
>>
>>
>> Em 29 de janeiro de 2014 19:59, Lucas Moraes <
>> lucastiagodemoraes at gmail.com> escreveu:
>>
>>> Boa noite pessoal, estou fazendo web crawler de um site, só que esse
>>> site bloqueou meu IP e fui forçado a usar proxy, mas estou tento problema
>>> de lentidão. Alguém tem alguma solução para deixar o proxy mais rápido?
>>> Falou.
>>>
>>> =begin disclaimer
>>> Sao Paulo Perl Mongers: http://sao-paulo.pm.org/
>>> SaoPaulo-pm mailing list: SaoPaulo-pm at pm.org
>>> L<http://mail.pm.org/mailman/listinfo/saopaulo-pm>
>>> =end disclaimer
>>>
>>>
>>
>>
>> --
>> "o animal satisfeito dorme". - Guimarães Rosa
>>
>> =begin disclaimer
>> Sao Paulo Perl Mongers: http://sao-paulo.pm.org/
>> SaoPaulo-pm mailing list: SaoPaulo-pm at pm.org
>> L<http://mail.pm.org/mailman/listinfo/saopaulo-pm>
>> =end disclaimer
>>
>>
>
>
> --
> Leonardo Ruoso
> Journalist, Perl developer and business consultant
> Media, UFC/2006; Telecom, IFCE/1998
>
> =begin disclaimer
> Sao Paulo Perl Mongers: http://sao-paulo.pm.org/
> SaoPaulo-pm mailing list: SaoPaulo-pm at pm.org
> L<http://mail.pm.org/mailman/listinfo/saopaulo-pm>
> =end disclaimer
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.pm.org/pipermail/saopaulo-pm/attachments/20140131/839cad5e/attachment.html>
More information about the SaoPaulo-pm
mailing list