Introduzione
In questo tutorial, esploreremo la conversione di script Python in file eseguibili per Windows in quattro semplici passi. Anche se ci sono molti modi per farlo, noi copriremo, secondo l’opinione popolare, il più semplice finora.
Questo tutorial è stato progettato dopo aver esaminato molti errori comuni che le persone affrontano mentre eseguono questo compito, e quindi contiene informazioni dettagliate per installare e impostare tutte le dipendenze. Sentitevi liberi di saltare qualsiasi passo, se avete già installato quelle dipendenze. Senza ulteriori indugi, cominciamo.
Passo 1: Installare cURL
cURL fornisce una libreria e uno strumento a riga di comando per trasferire dati utilizzando vari protocolli. Ne abbiamo bisogno per scaricare il gestore di pacchetti pip nel prossimo passo. Molti di voi l’avranno già installato, cosa che potete verificare eseguendo il seguente comando:
$ curl --version
Se il comando sopra restituisce una versione di curl, potete saltare le prossime istruzioni di questo passo. Per il resto di voi, potete installare curl seguendo questi tre passi:
Tuttavia, questo significa che potete usare il comando curl solo in quella particolare cartella. Per essere in grado di usare il comando curl da qualsiasi punto della vostra macchina, cliccate con il tasto destro su curl.exe, cliccate su “Proprietà” e copiate il valore “Posizione”. Dopo di che, cliccate con il tasto destro su “Il mio PC” e cliccate su “Proprietà”. Nel pannello delle opzioni a sinistra, seleziona l’opzione “Impostazioni di sistema avanzate”. È stata evidenziata nello screenshot qui sotto.
Nella finestra che appare, clicca su “Variabili d’ambiente” in basso a destra. È stato evidenziato nello screenshot qui sotto.
Nella finestra successiva, trova e fai doppio clic sulla variabile utente chiamata “Path”, poi clicca su “New”. Verrà creata una nuova casella di testo in quella finestra; incollate il valore “Percorso” del file “curl.exe” che avete copiato in precedenza, e poi cliccate su ‘OK’.
cURL dovrebbe ora essere accessibile da qualsiasi punto del vostro sistema. Confermate l’installazione eseguendo il comando qui sotto:
$ curl --version
Passiamo al prossimo passo.
Passo 2: Installare pip
In questo passo, installeremo pip, che è fondamentalmente un gestore di pacchetti per i pacchetti Python. Ne abbiamo bisogno nel prossimo passo per installare la libreria pyinstaller. La maggior parte di voi l’avrà già impostata, per controllare eseguite il seguente comando:
$ pip --version
Se il comando precedente ha restituito una versione di pip, potete saltare le prossime istruzioni di questo passo.
Per il resto, potete installare pip eseguendo i seguenti due comandi nel prompt dei comandi:
$ curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py
$ python get-pip.py
Ecco fatto. Pip è stato ora installato sulla vostra macchina locale! Potete eseguire il seguente comando per conferma:
$ pip --version
Prima di passare al passo successivo, dovete ripetere quello che abbiamo fatto per curl.exe in modo da poter accedere al comando pip da qualsiasi punto della vostra macchina, ma questa volta lo faremo per “pip.exe”.
Premete il tasto Windows e cercate “pip.exe”, poi cliccate con il tasto destro sul primo risultato della ricerca e cliccate su “Open File Location”, vi porterà alla cartella in cui si trova quel file. Cliccate con il tasto destro sul file “pip.exe” e poi selezionate “Proprietà”. Dopo di che, copia il valore “Location” e incollalo nella variabile Path proprio come abbiamo fatto nel passo 1.
Passo 3: Installare PyInstaller
In questo passo, installeremo pyinstaller usando pip. Abbiamo bisogno di pyinstaller per convertire i nostri script Python in file eseguibili (.exe). Hai solo bisogno di copiare e incollare il comando qui sotto nel tuo prompt dei comandi ed eseguirlo:
$ pip install pyinstaller
Ancora una volta, per confermare l’installazione, esegui il seguente comando:
$ pyinstaller --version
Nota: Se avete installato Anaconda nel vostro sistema, allora probabilmente state usando conda
il gestore dei pacchetti. In questo caso, eseguite i seguenti comandi qui sotto, in sequenza:
$ conda install -c conda-forge pyinstaller$ conda install -c anaconda pywin32
Questo passo segna la fine di tutte le installazioni. Nel prossimo passo, convertiremo i nostri file Python in un eseguibile con un solo comando.
Passo 4: Convertire i file Python in eseguibili
Questo è l’ultimo passo. Useremo pyinstaller per convertire i nostri file .py
in .exe
con un solo comando. Quindi, facciamolo!
Aprite il prompt dei comandi e navigate fino alla directory in cui si trova il vostro file/script Python. In alternativa, puoi aprire quella directory usando File Explorer, fare clic con il tasto destro del mouse + shift e poi selezionare “Apri il prompt dei comandi in questa cartella”. Prima di convertire il tuo file, dovresti controllare che il tuo file funzioni come previsto. A tal fine, ho scritto uno script Python di base che stampa il numero 10 quando viene eseguito.
Eseguiamo lo script e vediamo se funziona bene prima di convertirlo in un file eseguibile. Eseguite il seguente comando sul vostro prompt dei comandi:
$ python name_of_your_file.py
Nel mio caso, il nome del file era ‘sum.py’.
Per creare un file eseguibile autonomo nella stessa directory del vostro file Python, eseguite il seguente comando:
$ pyinstaller --onefile <file_name>.py
Questa istruzione potrebbe richiedere del tempo per essere completata. Al termine, genererà tre cartelle. Potete trovare il file eseguibile nella cartella “dist”. Notate che l’argomento “onefile” dice a pyinstaller di creare un solo file eseguibile.
Eseguiamo ora il nostro file eseguibile per vedere se la procedura ha funzionato!
Ta-da! Ha funzionato proprio come previsto.
Un piccolo suggerimento, se il vostro file eseguibile si chiude troppo velocemente perché possiate notare l’output, potete aggiungere una linea input()
alla fine del vostro file Python, che mantiene il prompt aperto in attesa dell’input. Questo è il modo in cui sono riuscito a fare uno screenshot del mio output.
Nota anche che se il tuo eseguibile dipende da altri file eseguibili, come phantomjs
, devi tenerli nella stessa directory del tuo file Python in modo che pyinstaller possa includerli nell’eseguibile.
Conclusione
In questo tutorial, abbiamo discusso in dettaglio la conversione degli script Python in file eseguibili usando la libreria pyinstaller di Python in quattro passi. Abbiamo iniziato installando cURL, seguito da pip e pyinstaller. Infine, abbiamo convertito un file Python di esempio in eseguibile per assicurarci che la procedura funzioni su Windows.