Problemas en Python con la ñ y acentos al acceder a una base de datos Oracle y volcarlos en un Excel

Contexto

Mi trabajo consistía en acceder con un script realizado en Python a una base de datos Oracle y obtener datos de ella.
Hasta aquí no tuve ningún problema, el problema vino cuando a partir de estos datos obtenidos los introducía en un Excel.

script_python

¿Cuál era el problema exactamente?

El problema era que los datos que metía en el Excel provenientes de la base de datos Oracle, se introducían sin acentos y sin eñes, en concreto los acentos me los quitaba y me los mostraba como si no estuvieran y para las eñes me las sustituia por símbolos raros.

¿Cómo solucioné el problema?

Bien, tras probar varias opciones al final conseguí solucionarlo simplemente añadiendo estas líneas al comienzo del script en Python:

import os
os.environ["NLS_LANG"] = "SPANISH_SPAIN.UTF8"

Con esas líneas lo que le estamos especificando al sistema operativo es que vamos a utilizar el lenguaje en español, así nos quitamos el problema de las eñes y los acentos.

Bibliografía

Módulos de sistema.

Advertisements