[pyar] SQL Server y ASCII Extendido

Marcos Dione mdione en grulic.org.ar
Sab Ago 6 08:23:41 ART 2016


On Fri, Aug 05, 2016 at 10:56:04PM -0300, Leandro Minatel wrote:
 El problema que tengo es que hay
> algunos caracteres extendidos ASCII en algunos registros de la tabla y no
> le estoy atinando a la solucion. A la hora de imprimir el campo por consola
> obtengo el siguiente error:
> 
> UnicodeEncodeError: 'charmap' codec can't encode character u'\u2013' in
> position 68: character maps to <undefined>

    empecemos por el principio: py2 o py3?

> He buscado por Internet algunas ideas pero ninguna me ha solucionado el
> problema, lo mejor que anduvo fue el .encode("iso-8859-1","ignore") pero no
> quiero que ignore, quiero que imprima el "dibujito" corresondiente en la
> consola. Olvidarse por el momento del MySQL.

    en realidad lo tenés que *decodficar*, y usando esto:

> - Codigo de pagina correspondiente al campo: Windows-1252

u= s.decode ('windows-1252')  # a.k.a 'cp1252'

    el string lo saqué de acá:

https://docs.python.org/2/library/codecs.html#standard-encodings

> - Python 2.7.11

    ah.

> - Caracter problematico: select char(150)

    ejemplo:

In [3]: s= chr (150)

In [4]: s
Out[4]: '\x96'

In [5]: u= s.decode ('windows-1252')

In [6]: u
Out[6]: u'\u2013'

In [7]: print u
–

    *BAM*.

-- 
(Not so) Random fortune:
Terrorism isn't a crime against people or property. It's a crime against
our minds, using the death of innocents and destruction of property to
make us fearful.
	    -- Bruce Schneier


Más información sobre la lista de distribución pyar