Solucionar el error UnicodeDecodeError: ‘utf-8’ codec can’t decode byte en Python
Me encontraba tratando de leer un archivo de texto en Python, para extraerle unos datos, pero al momento de ejecutar el script me sale el siguiente error: UnicodeDecodeError: ‘utf-8’ codec can’t decode byte
Eso sucede porque el archivo de texto que estamos tratando de leer desde Python, est谩 codificado en otro sistema de caracteres distinto a UTF-8. Si estamos en Ubuntu Linux, podemos validar el sistema de codificaci贸n de caracteres de un archivo de texto con el comando uchardet:
Instalamos uchardet
sudo apt install uchardet
Entonces validamos la codificaci贸n del archivo de texto en cuesti贸n
uchardet el_archivo.txt
Desde el ambiente gr谩fico, podemos emplear el editor de textos Kate, y 茅ste nos muestra el tipo de codificaci贸n del archivo en su barra de estado.
En fin, para resolver el problema ese de ‘utf-8’ codec can’t decode byte, debemos convertir el archivo de texto a codificaci贸n UTF-8. Para eso, nos valemos del comando iconv, especific谩ndole la codificaci贸n actual que tiene el archivo problem谩tico (que en mi caso es ISO-8859-15), y el nuevo archivo con la codificaci贸n UTF-8. La siguiente imagen resume este procedimiento.
Ahora s铆 podemos ejecutar nuevamente nuestro script Python apuntando al nuevo archivo de texto,聽 y no volver谩 a salir ese error relacionado con la codificaci贸n de caracteres.
Comparte esto en


