[SP-pm] Web Crawler com proxy lento
Lucas Moraes
lucastiagodemoraes at gmail.com
Mon Feb 3 14:58:36 PST 2014
Valeu pessoal pelas respostas, foram de muita valia para mim.
Desculpa pela demora para responder eu estava de viajem.
Ate mais.
Em 31 de janeiro de 2014 00:15, Marcio Ferreira <
marciodesouzaferreira em gmail.com> escreveu:
> 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 em 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 em 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 em 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 em 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 em 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 em pm.org
>> L<http://mail.pm.org/mailman/listinfo/saopaulo-pm>
>> =end disclaimer
>>
>>
>
> =begin disclaimer
> Sao Paulo Perl Mongers: http://sao-paulo.pm.org/
> SaoPaulo-pm mailing list: SaoPaulo-pm em pm.org
> L<http://mail.pm.org/mailman/listinfo/saopaulo-pm>
> =end disclaimer
>
>
-------------- Pr?xima Parte ----------
Um anexo em HTML foi limpo...
URL: <http://mail.pm.org/pipermail/saopaulo-pm/attachments/20140203/a5d05613/attachment.html>
More information about the SaoPaulo-pm
mailing list