[Python-es] Convertir utf8 a html entities

Luis Miguel Morillas morillas en gmail.com
Mar Jun 5 22:46:21 CEST 2012


El día 5 de junio de 2012 22:29, FERNANDEZ HERNANDEZ GONZALO
<gfernandez en tecnatom.es> escribió:
> Y no se podría hacer algo con maketrans y translate de string?
>
>

Claro que se puede hacer. El que quiera reinventar la rueda, que
traduzca: http://www.w3.org/TR/html4/sgml/entities.html

Saludos,

-- luismiguel  (@lmorillas)



>
> _______________________________________________________________
>
> Gonzalo Fernández Hernández
>
>
>
>
>
> gfernandez en tecnatom.es
>
>
>  Avda. Montes de Oca, 1
>  28703 San Sebastián de los Reyes-Madrid
>  Telf. 91 659 86 00 / 8205
>
>
>
> ________________________________________
> De: python-es-bounces+gfernandez=tecnatom.es en python.org [python-es-bounces+gfernandez=tecnatom.es en python.org] En nombre de Luis Miguel Morillas [morillas en gmail.com]
> Enviado el: martes, 05 de junio de 2012 20:29
> Para: La lista de python en castellano
> Asunto: Re: [Python-es] Convertir utf8 a html entities
>
> El día 5 de junio de 2012 13:53, Raimon Esteve
> <raimonesteve en gmail.com> escribió:
>> Hola,
>>
>> he leido de todo y nada me ha gustado. Como convertís un string utf8 a
>> un string con carácteres html? o sea, que los accentos se transformen
>> a codificación html?
>>
>> En este pequeño código, convertimos á é í ó ú ñ -> a htm entities.
>> Pero falta mayúsculas, ç (catalán), ....
>>
>
> Yo uso un parser de xml/html y un writer para HTML
>
>>>> from amara.bindery import html
>>>> from amara.writers import lookup
>>>> HTML_W = lookup("html")
>>>> doc = html.parse('<p>Caña áéíóú ç</p>')
>>>> doc.xml_encode(HTML_W)
>  '<html><head></head><body><p>Ca&ntilde;a
> &aacute;&eacute;&iacute;&oacute;&uacute; &ccedil;</p></body></html>'
>
>
> Saludos,
>
> -- luismiguel  (@lmorillas)
>
>> import re
>>
>> value u'Camión'
>>
>> value = re.sub(r'\xe1', "&aacute;", value)
>> value = re.sub(r'\xe9', "&eacute;", value)
>> value = re.sub(r'\xed', "&iacute;", value)
>> value = re.sub(r'\xf3', "&oacute;", value)
>> value = re.sub(r'\xfa', "&uacute;", value)
>> value = re.sub(r'\xf1', "&ntilde;", value)
>>
>> --
>> Si us plau, NO adjunti arxius a les seves respostes. Li preguem que
>> integri el text al cos del missatge. Pot respondre usant NetEtiquete
>> que li ajudarà a seguir la conversa.
>> http://es.wikipedia.org/wiki/Netiquette
>>
>> Por favor, NO adjunte archivos a sus respuestas. Le rogamos que
>> integre el texto en el cuerpo del mensaje. Puede responder usando
>> NetEtiquete que le ayudará a seguir la
>> conversación.http://es.wikipedia.org/wiki/Netiquette
>>
>> Please, DO NOT send attachment files with your answers, just copy and
>> paste only the text you need to send into the body of your mails.
>> Repply using NetEtiquete. http://en.wikipedia.org/wiki/Netiquette
>> _______________________________________________
>> Python-es mailing list
>> Python-es en python.org
>> http://mail.python.org/mailman/listinfo/python-es
>> FAQ: http://python-es-faq.wikidot.com/
> _______________________________________________
> Python-es mailing list
> Python-es en python.org
> http://mail.python.org/mailman/listinfo/python-es
> FAQ: http://python-es-faq.wikidot.com/
>
> ______________________________________________________________________
> This email has been scanned by the Email Security System.
> ______________________________________________________________________
>
>
> Si no es necesario no imprimas este mensaje. Tu papel es importante
>
> Le invitamos a visitar nuestra página Web: <http://www.tecnatom.es>
> INFORMACION RELATIVA A LA L.O.P.D.:
> En cumplimiento de la Ley Orgánica 15/1999, de Protección de Datos de Carácter Personal, en el caso de que este mensaje contenga datos de carácter personal se requiere a su destinatario que los utilice exclusivamente para el objeto previamente acordado con TECNATOM S.A., garantice su secreto e integridad, no los ceda a terceras personas y los destruya una vez finalizada la vigencia de la colaboración con TECNATOM, S.A.
> Salvo comunicación expresa en contra por parte del destinatario, se considerará la aceptación plena de lo referido en el párrafo anterior.
>
> AVISO DE CONFIDENCIALIDAD:
> Este mensaje va dirigido, de manera exclusiva, a su destinatario y contiene información confidencial y sujeta al secreto profesional, cuya divulgación no está permitida por la ley. En caso de haber recibido este mensaje por error, le rogamos que, de forma inmediata, nos lo comunique mediante correo electrónico remitido a nuestra atención y proceda a su eliminación, así como a la de cualquier documento adjunto al mismo. Asimismo, le comunicamos que la distribución, copia o utilización de este mensaje, o de cualquier documento adjunto al mismo, cualquiera que fuera su finalidad, están prohibidas por la ley.
>
>
> ______________________________________________________________________
> This email has been scanned by the Email Security System.
> ______________________________________________________________________
> _______________________________________________
> Python-es mailing list
> Python-es en python.org
> http://mail.python.org/mailman/listinfo/python-es
> FAQ: http://python-es-faq.wikidot.com/


Más información sobre la lista de distribución Python-es