Creación de un EXE desde un archivo Python en Windows

Publicado el 16 mayo 2022 por Daniel Rodríguez @analyticslane

Con Python se pueden crear grandes aplicaciones informáticas con las que solucionar múltiples problemas. Aunque hacerlas llegar a usuarios finales con pocos conocimientos puede ser complicado. Hay que enviar una carpeta con todos los archivos del proyecto, instalar la versión correcta de Python, las dependencias del proyecto y ejecutar desde la línea de comandos el programa. Algo que no está al acceso de todos los usuarios. Siendo mucho más eficaz en estos casos enviar un programa que se pueda ejecutar simplemente haciendo clic sobre un icono. Algo que se puede conseguir fácilmente en Windows creando un ejecutable EXE desde un archivo Python utilizando para ello Auto Py to Exe.

Instalación de Auto Py to Exe

Auto Py to Exe con el que se puede crear un archivo EXE con un programa escrito en Python desde una interfaz gráfica, por lo que en pocos clics se puede conseguir un ejecutable para distribuir. La instalación, a pesar de ser una aplicación gráfica, se puede realizar mendicante pip, para lo que solamente se tiene que escribir en la terminal el siguiente comando

pip install auto-py-to-exe

Una vez hecho esto para lanzar el programa solamente se tiene que escribir en la terminal la siguiente instrucción

auto-py-to-exe

Apareciendo una ventana similar a la siguiente.

La aplicación Auto Py to Exe

Conseguir un EXE desde un archivo Python con Auto Py to Exe

La aplicación es bastante sencilla de utilizar, aunque tiene bastantes opciones. Siendo la primera opción el idioma entre el que se encuentra el castellano. Después solamente se tiene que indicar el script de inicio del programa, lo que se puede hacer escribiendo la ruta en el cuadro de texto o seleccionado el archivo con el botón Browse ( Mostrar en castellano). Una vez hecho esto se pueden seleccionar las diferentes opciones en base a lo que se desee conseguir. La primera que aparece es seleccionar si se desea generar una carpeta con el programa o un único archivo. Para proyectos pequeños la mejor opción es la segunda, solamente se tendrá que enviar un EXE, pero cuando el proyecto es más grande es mejor publicarlo como una carpeta.

La siguiente opción es si la aplicación está basada en terminal o en una ventana. Por defecto viene seleccionada la opción de consola, por lo al ejecutarse el programa se mostrará una terminal para el que el usuario interactúe con ella. Para las aplicaciones que tienen interfaz gráfica es mejor seleccionar la segunda opción, ya que así no se mostrará la terminal, algo que puede ser molesto para muchos usuarios.

Posteriormente se puede indicar un icono para la aplicación, si es necesario incluir archivos adicionales como puede ser datos o imágenes y otras configuraciones avanzadas. Una vez seleccionadas las opciones se puede pulsar el botón CONVERT .PY TO .EXE ( CONVERTIR .PY A .EXE) para iniciar el proceso de conversión.

Ejemplo de conversión: calculadora creada con PySimpleGUI

En una entrada de la semana pasada se explicó cómo se pueden construir aplicaciones con GUI en Python empleando para ello PySimpleGUI, siendo uno de los ejemplos utilizados una calculadora. Para convertir esta aplicación en un archivo EXE se ha usado las siguientes opciones.

Opciones seleccionadas para compilar la calculadora en Auto Py to Exe

Como se puede ver en la captura de pantalla lo primero que se hizo es cambiar el idioma de la aplicación. Seleccionado posteriormente la ruta al archivo con la calculadora. Seleccionado crear un único archivo, el programa es realmente sencillo, y ocultando la consola, ya que esta es una aplicación gráfica y el usuario no tiene por qué acceder a ella. El resto de las opciones se han dejado tal como vienen por defecto. Al pulsar sobre el botón azul se ejecutan los procesos necesarios y, después de un rato, se creará el archivo EXE en una carpeta llamada output en la ruta actual.

Resultados de compilar la calculadora en Auto Py to Exe

Ahora se puede acceder a la carpeta y comprobar que hay un archivo, en este caso de poco más de 10Mb, con el programa. Cualquier usuario podrá ejecutar este en su ordenador. Sin la necesidad de instalar Python ni ninguna de las dependencias. Toda la información necesaria se encuentra dentro del archivo.

Archivo EXE con el programa de calculadora

Pudiéndose comprobar que si se ejecuta al programa se obtendrá una ventana como la siguiente.

La aplicación de la calculadora compilada funcionando

Conclusiones

En esta ocasión se ha visto cómo se puede usar Auto Py to Exe para la creación de EXE desde un archivo Python en Windows. Lo que es de gran utilidad para distribuir desarrollos. Haciendo que el usuario final tenga que ejecutar instalar en su sistema Python ni las liberas de las que depende la ejecución del programa. Evitando de este modo posibles problemas de incompatibilidad entre versiones en los diferentes entornos de los posibles usuarios finales.