Criando executável de um código python | Rodrigo R. Ferreira
Criando executável de um código python
4 de julho de 2018 3 de julho de 2018 / rodrigoreisf
Recentemente precisei instalar um aplicação python que criei para um cliente, e quem já passou por isso deve ter percebido que pode ser um processo um pouco maçante dependendo da quantidade de módulos(libs) que sua aplicação use. Uma saída foi empacotar tudo em um instalador e o cliente só precisa se preocupar em executar um .exe. Veja como fazer de forma bem rápida.
Considerando que sua app esteja pronta e o Python e PIP instalados em sua máquina, basta seguir os passos:
Instalar o pacote PyInstaller, esse é o camarada que faz todo o trabalho duro de "empacotar" tudo. Execute o comando em seu terminal:
Feita a instalação corretamente, acesse a pasta do seu projeto com o cmd ou seu editor de código de preferência, no meu caso o VSCode.
Veja que inicialmente tenho apenas um arquivo app.py e nele duas linhas de código. Em breve explico o porque da segunda linha.
Agora execute o comando para gerar o executável:
pyinstaller app.py
Serão geradas duas pastas(build e dist) e um arquivo de configuração com a extensão .specs. Este arquivo pode ser modificados para gerar resultados diferentes, veja aqui.
O que importa para nós é o que está na pasta dist. Execute o arquivo .exe.
Lembra que comentei sobre segunda linha do código? Sem ela o código terminaria a execução e fecharia o console sem nem dar tempo de comemorarmos o resultado. Não encontrei uma forma nativa de resolver isso mas para este exemplo resolve, basta apertar a tecla Enter que a tela se encerra.
O que é enviado para o cliente esta na pasta dist, não fica muito leve já que o python vai junto mas é bem útil em alguns casos, se o ambiente de destino já tiver o python obviamente que seria melhor mandar só o app.py. Mas enfim, basta zipar tudo e ser feliz.
Bom é isso. Se tiverem sugestões e quiserem compartilhar, são todos bem-vindos. Abraços e até o próximo post.
Fonte: publicado originalmente em codigosimples.net
← {NodeJS + ExpressJS} – Hello world
Guia de pronúncia para desenvolvedores →
9 comentários sobre "Criando executável de um código python"
Com o PyInstaller é possível eu definir se quero gerar o executável para 32 bits ou para 64 bits?
Tudo bem amigo? O executável depende das dependências do python, então se a sua versão usada do python for 64 bits será gerado em 64. Como você pode ter mais de uma versão do python instalada então pode gerar para ambas. Mas trabalhar com 64 acredito que só seja realmente necessário ser for endereçar uma quantidade de memória. Abraços
21 de janeiro de 2019 às 12:58
Boa tarde Rodrigo, obrigadooo pelas dicas!!!
O meu programa apresentou alguns problemas, principalmente por que eu utilizo o tkinter e uma imagem no programa. Sabe como posso resolver isso?
Alguma forma de indicar ao PyInstaller para adicionar o tkinter e a imagem que preciso?
15 de maio de 2020 às 13:49
Gerou o executável, porem não abre. vc clica para abrir e não aparece nada.
TEm alguma coisa que eu possa fazer ? se quiser posso te mandar o arquivo py pra vc.
ja tentei de tudo que conheco, porem não entra o executavel.
31 de janeiro de 2021 às 18:01
Ola Fabio, a essa altura do campeonato já deve ter resolvido kkkk. O blog ficou parado por um booom tempo, perdão. Se o código for simples o mais provável pode ser que esta abrindo sem printar nada na tela e sem um stop na linha de comando. coloque um input para manter a tela em aberto só para ter certeza. Como pode ser muitas coisas diferentes tente capturar alguma exception e gravar para análise.
Vinícius de Assis Azevedo
23 de agosto de 2021 às 16:47
Olá amigo, Parabéns pelo Post!! Eu estou com uma dúvida, gostaria de saber como criar um executável, sendo que tenho dois scripts .py que é importado dentro de um principal, tentei fazer o executável apenas com o principal, mas ele continua dando erro.
2 de setembro de 2021 às 01:44
Boa noite Vinícius, desculpe a demora, poderia mostrar o detalhe da mensagem de erro? Obrigado pelo contato 🙂
17 de fevereiro de 2022 às 12:05
Muito ruim! Fiz igual ele mandou e agr meu VSCode ficou com a fonte muito pequena e não volta ao normal!
17 de fevereiro de 2022 às 12:34
Bom dia Yuri, tudo blza? Não sei se entendi mas você tentou gerar um exec de um code em python seu e o VSCode mudou a fonte do editor? O processo não impacta o editor, desculpa não entendi a relação.