Ir para o conteúdo
  • Revista PROGRAMAR: Já está disponível a edição #57 da revista programar. Faz já o download aqui!

PYPT

[Python] py para exe - py2exe

Mensagens Recomendadas

PYPT    2
PYPT

Este script transforma qualquer script em Python para um executável para Windows

from distutils.core import setup
import py2exe, sys, os

modulos = [sys.argv[1]]
sys.argv[1]="py2exe"

opcoes = {}
opcoes['py2exe'] = {}
opcoes['py2exe']['excludes'] = ["pywin", "pywin.debugger", "pywin.debugger.dbgcon", "pywin.dialogs", "pywin.dialogs.list"]
opcoes['py2exe']['packages'] = ["encodings"]

descricao = 'Programa'
versao = '1.0'

setup(name=descricao, console=modulos, zipfile="lib/shared.zip", description=descricao, version=versao)

Grave o código acima em um arquivo .py qualquer de sua preferência (setup.py, make.py, etc.), alterando a linha que define os módulos que fazem parte do seu programa. Depois, execute-o assim:

python setup.py seuprograma.py

Onde "setup.py" deve ser substituído pelo nome que você deu ao seu compilador e seuprograma.py pelo que você quer transformar em executável.

O arquivo .EXE será salvo na pasta DIST.

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
PYPT    2
PYPT

Uma coisa, esse executável depois não vai precisar do interpretador?

Não necessita pois este executavel é feito para pessoas que não tenham instalado no pc o interpretador de python.

:P

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
David Pintassilgo    5
David Pintassilgo

Esclarece-me só uma coisa:

alterando a linha que define os módulos que fazem parte do seu programa.

Isto é para adicionar aqui:

opcoes['py2exe']['excludes'] = ["pywin", "pywin.debugger", "pywin.debugger.dbgcon", "pywin.dialogs", "pywin.dialogs.list"]

as cenas que usamos no programa a converter, certo?

Uma pergunta que pode parecer descabida:

Assim sendo, não seria ideal ter ai já tudo e mais alguma coisa possivel?

edit:

Outra coisa,.. dá-me um erro no modulo py2exe

raceback (most recent call last):
 File "compilar_win.py", line 2, in <module>
   import py2exe, sys, os
ImportError: No module named py2exe

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
PYPT    2
PYPT

Ele estava a falar em gerar, não em usar.

Resumindo:

Não é possível com este script "PY2EXE" transformar scripts Python para Windows em Linux, por duas razões:

opcoes = {}

opcoes['py2exe'] = {}

opcoes['py2exe']['excludes'] = ["pywin", "pywin.debugger", "pywin.debugger.dbgcon", "pywin.dialogs", "pywin.dialogs.list"]

opcoes['py2exe']['packages'] = ["encodings"]

e

Toda estrutura de Linux diferente de Windows.

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
David Pintassilgo    5
David Pintassilgo

ok,.. então não serve para o que quero. Pensei que em linux pude-se criar o exe par acorrer depois em win.

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
Tharis    3
Tharis
Grave o código acima em um arquivo .py qualquer de sua preferência (setup.py, make.py, etc.), alterando a linha que define os módulos que fazem parte do seu programa.

Tipo, já tentei usar isto dum site brazuca em Win e deu-me sempre erro!

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
djthyrax    11
djthyrax
Grave o código acima em um arquivo .py qualquer de sua preferência (setup.py, make.py, etc.), alterando a linha que define os módulos que fazem parte do seu programa.

Tipo, já tentei usar isto dum site brazuca em Win e deu-me sempre erro!

http://www.py2exe.org/ tens que instalar isto 1º.

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
pedrotuga    31
pedrotuga

david, é capaz de não dar para gerar isto no windows. Isto importa o pacote sys, provavelmente usa rotinas especificas para sistemas operativos diferentes.

Mas podes sempre experimentar.

Por acaso tenho aqui um ficheiro .py que precisava que alguem me compilasse para um .exe... alguem?

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
David Pintassilgo    5
David Pintassilgo

Por acaso tenho aqui um ficheiro .py que precisava que alguem me compilasse para um .exe... alguem?

Para isso é impreterivelmente necessário usar Windows? Eu não posso agarrar no meu .py file usar uma cena qq e criar um exe e fica prontinho a usar em win ?

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
pedrotuga    31
pedrotuga

Por acaso tenho aqui um ficheiro .py que precisava que alguem me compilasse para um .exe... alguem?

Para isso é impreterivelmente necessário usar Windows? Eu não posso agarrar no meu .py file usar uma cena qq e criar um exe e fica prontinho a usar em win ?

Não sei. Teria que analisar o código fonte do módulo sys e do py2exe a um nivel superior ao meu conhecimento do funcionamento do interpretador de python.

É provavel que não, mas não tenho a certeza.

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
David Pintassilgo    5
David Pintassilgo

Eu não estou a falar em relação ao py2exe em especial,... estou a falar a nivel geral,... não há nada que fassa isso?

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
pedrotuga    31
pedrotuga

Boas,

Como posso remover a consola que fica com o programa executável (depois de "compilar")?

Abraços,

muda o nome do ficheiro fonte para pyw e depois compila.

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
zero-cool    0
zero-cool

Faz sem o python.

Se percebi bem, escrever na consola

<compilador>.py <file>.py

, certo? Se sim, também não resulta.. a janela aparece sempre ao abrir o programa compilado.

Abraços,

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
zero-cool    0
zero-cool

<compilador>.py <file>.pyw

Também não funciona.. começo a pensar se será ou não de algum módulo que tenha no programa... vou colocá-lo na secção de armazém de código. É o WOL.

Abraços,

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
Cybernavigator    0
Cybernavigator

da pa gerar o exe em qq plataforma. claro k so pode ser aberto em win. mais uma nota, para k alguem inicie o prog sem o decompilador instalado tem-se de incluir o python25.dll

ja agr, da pa meter um icone no executavel?

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
pedrotuga    31
pedrotuga

Este tópico causou mais confusão do que ajudou.

Está melhor explicado no site oficial do py2exe, o código para criar um executavel é bem mais simples do que o afixado na primeira linha.

Outra coisa que não é preciso é preocuparem-se com .dll's, o py2exe poe na mesma pasta tudo o que é necessario para distribuir o programa.

Se tiverem o python correctamnte instalado no windows e pagarem num script python cuja extenção é .pyw, de maneira nenhuma abre uma consola. Agor claro.. se forem à consola e escreverem:

python meuscript.pyw

é óbvio que esta nao se vai fechar por obra e graça do espirito santo.

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
newbeen    0
newbeen

Ja agora ja alguém experimentou usar o psyco sobre py2exe que me possa dar algum feedback em relação a possíveis ou nao melhoras no tempo de execução dos programas em python...?

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!

Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.

Entrar Agora


×

Aviso Sobre Cookies

Ao usar este site você aceita os nossos Termos de Uso e Política de Privacidade