Olá Thiago,

um palpite: como disseste que você está lendo um RSS, invariavelmente
isso tem que passar em algum momento por um parser XML. Todo parser
XML lê a primeira linha do XML para saber se aquilo que está por ser
parseado está codificado e em que encoding e faz o parsing,
transcrevendo tudo para unicode.

Assim, analise as seguintes situações:

1) O RSS que você está acessando está definido como um XML
corretamente construido, ou seja, ele é um XML que diz que na primeira
linha que é iso-8859-1 e, de fato, o conteudo dele é iso-8859-1

2) Se #1 está OK, em principio basta você transformar as string
unicode que você tem para strings encodadas em UTF-8. Isso se faz, em
expressões python, com minha_string.encode('utf-8'). Se for em ZPT,
comandos tal:content e tal:replace nao precisam disso (o ZPT se vira
sozinho), mas tal:attribute precisa.

Outra dica é usar um atributo adiciona no encode, que "come" o
caracter que não se encaixa na codificação (o que aconteceria, por
exemplo, se alguem coloca dentro de um UTF-8 um caracter que nao cabe
no utf-8, mas apenas no utf-16. Para isso,
minha_string.encode('utf-8', 'ignore'). Isso nao resolve o problema,
mas lhe ajudara a visualizar qual é o caracter que está com encoding
incorreto.

Um abraço,

Fabiano Weimar


2008/1/18 Thiago M. Figueiredo <[EMAIL PROTECTED]>:
>
>
>
>
>
>
> Rodrigo Senra wrote:
>  >
>  >
>  > [ Thiago M. Figueiredo ]:
>  > -----------------------------
>  > |É que na veradade ele vem de um RSS pois o rss que estou chamando é
>  > |ISO-8859-1
>  >
>  > Então na rotina de recepção do RSS vc deve converter o encoding do
>  > conteúdo RSS para UTF-8. Assim na hora de renderizar seu template de
>  > página
>  > todo o conteúdo estará no mesmo encoding.
>  >
>  > Abração,
>  > Rodrigo Senra
>  >
>  >
>
>  Sim, estava tentando fazer aqui mais não consegui pois ele não aceita da
>  forma que eu fiz.
>
>
>  Muito Obrigado
>
>  --
>  ------------------------------------
>  Thiago M. Figueiredo
>  E-Mail: [EMAIL PROTECTED]
>  E-Mail: [EMAIL PROTECTED]
>  Cel: (55 11) 8627-5343
>  http://www.pzpzine.com
>  http://www.thiagofigueiredo.com
>  'Open Source' o conhecimento é do mundo! :P
>  Usar software proprietario R$ 450,00 com MasterCard, usar software livre
> não tem preço.... :D
>
>  



-- 
Fabiano Weimar dos Santos (xiru)
Weimar Consultoria

Hospedagem Plone, Zope e Python
http://www.pytown.com

Responder a