[Rio-pm] LWP::Simple x UTF-8

Andre Carneiro andregarciacarneiro em gmail.com
Quinta Junho 2 09:29:09 PDT 2011


stan++

2011/6/2 Stanislaw Pusep <creaktive em gmail.com>

> Bom dia, Matheus!
> O LWP retorna octets, enquanto o texto, para Perl, é Unicode. Você precisa
> decodificar os octets, para depois recodificar:
>
> perl -MEncode -MLWP::Simple -e 'my $content = decode_utf8(get("
> http://www.cpvs.com.br/cpvs/prodpesquisa.aspx?codigo=87")); open(my $fh,
> ">:encoding(UTF-8)", "teste.html"); print $fh $content'
>
> Para comparação, recodificando em ISO-8859-1:
>
> perl -MEncode -MLWP::Simple -e 'my $content = decode_utf8(get("
> http://www.cpvs.com.br/cpvs/prodpesquisa.aspx?codigo=87")); open(my $fh,
> ">:encoding(ISO-8859-1)", "teste.html"); print $fh $content'
>
> Agora, se a sua intenção é apenas baixar o HTML e guardar num arquivo,
> preservando a codificação UTF-8... Dispense o Unicode e trabalhe só com
> octets:
>
> perl -MLWP::Simple -e 'my $content = get("
> http://www.cpvs.com.br/cpvs/prodpesquisa.aspx?codigo=87"); open(my $fh,
> ">:raw", "teste.html"); print $fh $content'
>
> Para mais detalhes (como, por exemplo, normalizar arquivos que misturam
> várias codificações), veja o artigo:
> http://sao-paulo.pm.org/equinocio/2011/mar/4
>
> ABS()
>
>
>
>
> 2011/6/2 Matheus Lucas <malsi2 em yahoo.com.br>
>
>> Bom dia amigos !
>> Estou com uma pequena duvida aqui, talvez alguem ai ja passou por isso...
>> estou pegando conteudo de alguns sites com o metodo get() do LWP::Simple
>>
>>  my $urlContent = get("
>> http://www.cpvs.com.br/cpvs/prodpesquisa.aspx?codigo=87");
>>
>> porem, este site esta vindo originalmente em formato ISO(8859-1) e com um
>> monte de caracteres bagunçados, quando eu abro em um navegador configurado
>> para utf8...normal né.
>>
>> *Administração:
>> * Administrado na ração para frangos de corte e perus.
>>
>>
>> mais eu preciso desse arquivo em utf-8 !!!
>>
>> continuando, eu abro um arquivo usando o open com o argumento
>> "encoding(UTF-8)"
>> open( FILE, '>:encoding(UTF-8)', "ttt.htm" );
>> e escrevo da forma tradicional... nao conheço outra forma de escrever
>> arquivos no perl.
>> print FILE $urlContent;
>> e mesmo assim ele vem com os caracteres da codificacao ocidental, porem eu
>> verifico o arquivo com o comando ""file ttt.htm" e ele me fala que o arquivo
>> ta em utf-8.
>>
>> a pergunta é: alguem ai sabe como pegar esse codigo ou escrever ele ja na
>> codificaçao utf-8 ????
>> espero ter sido claro :-)
>>
>> Abraços a todos e obrigado !
>>
>> Matheus Lucas
>> Viçosa-MG
>>
>>
>>
>> --- Em *seg, 30/5/11, Diogo Leal <estranho em diogoleal.com>* escreveu:
>>
>>
>> De: Diogo Leal <estranho em diogoleal.com>
>> Assunto: [Rio-pm] FSLDC é neste sábado
>> Para: "Perl Mongers Rio de Janeiro" <rio-pm em pm.org>
>> Data: Segunda-feira, 30 de Maio de 2011, 19:28
>>
>> Pessoal,
>>
>> Será neste sábado o Forum de Software Livre de Duque de Caxias, que
>> contará com uma palestra sobre Perl Moderno.
>> Acho que será bem válido a presença dos monges lá no evento.
>>
>> O site do evento é => http://forumsoftwarelivre.com.br/2011/
>>
>> Eu sei que é em Caxias.. mas pô... Caxias é perto do Rio.
>>
>>
>>
>> Diogo Leal [aka estranho]
>> http://diogoleal.com
>> msn | gtalk: estranho em diogoleal.com<http://mc/compose?to=estranho@diogoleal.com>
>>
>>
>> -----Anexo incorporado-----
>>
>> _______________________________________________
>> Rio-pm mailing list
>> Rio-pm em pm.org <http://mc/compose?to=Rio-pm@pm.org>
>> http://mail.pm.org/mailman/listinfo/rio-pm
>>
>>
>> _______________________________________________
>> Rio-pm mailing list
>> Rio-pm em pm.org
>> http://mail.pm.org/mailman/listinfo/rio-pm
>>
>
>
> _______________________________________________
> Rio-pm mailing list
> Rio-pm em pm.org
> http://mail.pm.org/mailman/listinfo/rio-pm
>



-- 
André Garcia Carneiro
Analista/Desenvolvedor Perl
(11)82907780
-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: <http://mail.pm.org/pipermail/rio-pm/attachments/20110602/56d2fd97/attachment-0001.html>


Mais detalhes sobre a lista de discussão Rio-pm