Questa è una vecchia versione del documento!


PY2EXE

Py2Exe consente di trasformare uno script Python in un eseguibile Windows.

Pre Requisiti

Per prima cosa è necessario installare il pacchetto py2exe

  $ pip install py2exe

Operatività

Solitamente, per mantenere un certo grado di pulizia, tendo a creare una cartella py2exe sotto la cartella del progetto. All'interno di detta cartella creerò la cartella Redist dove verrà copiato l'eseguibile finale e gli eventuali files di configurazione.

Nella cartella py2exe creo il file setup.py che contiene le informazioni relative all'eseguibile da generare

from distutils.core import setup
import py2exe, sys
 
import os
 
sys.argv.append('py2exe')
 
setup(
    name = '<Executable Name>',
    description = '<Exe Description>',
    version = '<Your Version>',  
    company_name = "<Your Company>",
    copyright = "<Your Copyright>",
    options = {'py2exe': {'bundle_files': 1, 'compressed': True, 'dll_excludes': ["<dll to exclude>"]}},
    zipfile = None,
    console = [{
            "script":"<Path and Script File Name>",
            "icon_resources": [(1, "<Yuour_icon.ico>")],
            "dest_base":"<Executable Name>"
		   }],
)

e poi creo il batch che si occuperà della conversione vera e propria Convert2Exe.bat

@echo off
cls
c:\Python27\python.exe setup.py py2exe -i "<eventuali moduli da injettare>"
timeout 10

ed infine il batch che converte e smista Prepare_Redist.bat

@Echo off
call .\Convert2Exe.bat
copy .\dist\<Your_Exe_Name>.exe .\Redist /Y
timeout 10

Moduli Mancanti

Alla fine della compilazione potrebbe apparire un messaggio che avvisa della mancanza di alcuni moduli (il che significa che molto probabilmente l'eseguibile non funzionerà). Per ovviare a questa cosa si può intervenire sul parametro -i del batch Convert2Exe.bat se è facile identificare di che modulo si tratta. In alternativa c'è sempre lo “sporco trucco” di aggiungere a setup.py tutti i moduli presenti nello script che si vuole convertire.

Conclusione

Se tutto ha funzionato a dovere nella cartella Redist dovrebbe esserci il compilato dello script.

python/py2exe.1503419334.txt.gz · Ultima modifica: 2017/08/22 16:28 da apressato
Torna su
CC Attribution-Share Alike 4.0 International
Driven by DokuWiki Recent changes RSS feed Valid CSS Valid XHTML 1.0