Eu precisava de uma função que fosse mais ou menos equivalente ao
html_entity_decode do PHP.Eu estava usando a biblioteca
webhelpers, que tem uma função escape, mas cadê a unescape? Olhando o código, descubro que a webhelpers usa uma função definida em webhelpers.utils, chamada cgi_escape, que seria uma implementação melhor de cgi.escape.Minhas esperanças então se concentratam no módulo
cgi. Mas uma olhada mais atenta me frustrou de novo: temos escape, mas não unescape. Até que um comentário num post do codare que, vejam só a ironia, mostrava como implementar um escape, me trouxe a solução: xml.sax.saxutils.unescape (e sua par, xml.sax.saxutils.escape).Sei que teria sido muito fácil implementar uma função assim eu mesmo – até mesmo trivial. O ponto é que algo que eu considerava intuitivo e esperava encontrar naquele lugar, se mostrou muito mais difícil de achar do que minha intuição supôs. E eu não gosto de ter minha intuição enganada.

5 comentários:
Por isso que gosto do PHP... Não tem esse tipo de problema, tá tudo pronto!
rsrsrsrs
Calma Cacilhas, mantenha a calma!
[]'s
Um, dois, três, quatro…
Hmmm... Mas isso não seria exatamente um ponto fraco da *linguagem*, apenas uma imperfeição da biblioteca.
Bem Eduardo,
Nem mesmo isso. A resposta que dei ao L.P. foi só para ser engraçada mesmo. =)
A biblioteca existe e é bem organizada.
É que o Walter deu uma moscada feia, já que a biblioteca SAX é bem mais manjada que a webhelpers.
Ele se esqueceu de procurar no primeiríssimo lugar onde qualquer programador Python procura: na Python Library Reference, também conhecida como o pulo do gato.
As funções estão lá, no capítulo 8, seção 11.
[]'s
Cacilhas, La Batalema
Hum. Sim, vc está certo em dizer que eu mosquei de não procurar no sax primeiro.
Mas veja, o ponto é que algumas vezes a organização das bibliotecas quebra a forma que 'intuímos' que as coisas estão organizadas..
E, convenhamos, um html_escape ou unescape numa biblioteca de xml não é lá muito intuitivo :) Mas é isso aí, errando e acertando a gente segue escrevendo os softwares toscos de cada dia!
Postar um comentário