Wprowadzenie
W tym poradniku zajmiemy się konwersją skryptów Pythona do plików wykonywalnych Windows w czterech prostych krokach. Chociaż istnieje wiele sposobów, aby to zrobić, my zajmiemy się, zgodnie z powszechną opinią, najprostszym z nich.
Tutorial ten został zaprojektowany po zapoznaniu się z wieloma typowymi błędami, które ludzie napotykają podczas wykonywania tego zadania, dlatego też zawiera szczegółowe informacje na temat instalacji i konfiguracji wszystkich zależności. Nie krępuj się pominąć żadnego kroku, jeśli masz już te zależności zainstalowane. Bez dalszych ceregieli, zaczynajmy.
Krok 1: Zainstaluj cURL
cURL dostarcza bibliotekę i narzędzie wiersza poleceń do przesyłania danych przy użyciu różnych protokołów. Potrzebujemy go, aby pobrać menedżera pakietów pip w następnym kroku. Wielu z was ma już ją skonfigurowaną, co można sprawdzić wykonując następujące polecenie:
$ curl --version
Jeśli powyższe polecenie zwróci wersję curl, można pominąć kolejne instrukcje w tym kroku. Jeśli chodzi o resztę, możesz zainstalować curla wykonując te trzy kroki:
Jednakże oznacza to, że możesz używać polecenia curl tylko w tym konkretnym folderze. Aby móc korzystać z polecenia curl z dowolnego miejsca na komputerze, kliknij prawym przyciskiem myszy na curl.exe, kliknij na „Właściwości” i skopiuj wartość „Lokalizacja”. Następnie kliknij prawym przyciskiem myszy na „Mój komputer” i kliknij na „Właściwości”. W panelu opcji po lewej stronie, wybierz opcję „Zaawansowane ustawienia systemu”. Została ona zaznaczona na poniższym zrzucie ekranu.
W oknie, które się pojawi, kliknij „Zmienne środowiskowe” w prawym dolnym rogu. Została ona zaznaczona na poniższym zrzucie ekranu.
W kolejnym oknie znajdź i kliknij dwukrotnie na zmienną użytkownika o nazwie „Path”, a następnie kliknij na „New”. W oknie tym zostanie utworzone nowe pole tekstowe, w którym należy wkleić wartość „Location” skopiowanego wcześniej pliku „curl.exe”, a następnie kliknąć na „OK”.
cURL powinien być teraz dostępny z dowolnego miejsca w systemie. Potwierdź swoją instalację, uruchamiając poniższe polecenie:
$ curl --version
Przejdźmy do następnego kroku.
Krok 2: Zainstaluj pip
W tym kroku zainstalujemy pip, który jest w zasadzie menedżerem pakietów dla pakietów Pythona. Potrzebujemy go w następnym kroku, aby zainstalować bibliotekę pyinstaller. Większość z was ma już ją skonfigurowaną, aby to sprawdzić wykonajcie następujące polecenie:
$ pip --version
Jeśli powyższe polecenie zwróciło wersję pip, możecie pominąć kolejne instrukcje w tym kroku.
Jeśli chodzi o resztę, możesz zainstalować pip wykonując następujące dwa polecenia w wierszu poleceń:
$ curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py
$ python get-pip.py
To wszystko. Pip został zainstalowany na Twoim lokalnym komputerze! Możesz uruchomić następujące polecenie dla potwierdzenia:
$ pip --version
Przed przejściem do następnego kroku, musisz powtórzyć to, co zrobiliśmy dla curl.exe, abyś mógł uzyskać dostęp do polecenia pip z dowolnego miejsca w swoim komputerze, ale tym razem zrobimy to dla „pip.exe”.
Wciśnij klawisz Windows i wyszukaj „pip.exe”, następnie kliknij prawym przyciskiem myszy na pierwszym wyniku wyszukiwania i kliknij „Open File Location”, to przeniesie Cię do folderu, w którym znajduje się ten plik. Kliknij prawym przyciskiem myszy na pliku „pip.exe”, a następnie wybierz „Właściwości”. Po tym, skopiuj wartość „Location” i wklej ją do zmiennej Path, tak jak zrobiliśmy to w kroku 1.
Krok 3: Zainstaluj PyInstaller
W tym kroku, zainstalujemy pyinstaller używając pip. Pyinstaller jest nam potrzebny do konwersji naszych skryptów Pythona na pliki wykonywalne (.exe). Musisz tylko skopiować i wkleić poniższe polecenie do wiersza poleceń i uruchomić je:
$ pip install pyinstaller
Aby potwierdzić instalację, uruchom następujące polecenie:
$ pyinstaller --version
Uwaga: Jeśli masz zainstalowaną Anacondę w swoim systemie, to prawdopodobnie używasz zamiast niej conda
menedżera pakietów. W takim przypadku wykonaj następujące polecenia, kolejno:
$ conda install -c conda-forge pyinstaller$ conda install -c anaconda pywin32
Ten krok oznacza koniec wszystkich instalacji. W następnym kroku, będziemy konwertować nasze pliki Pythona na pliki wykonywalne za pomocą tylko jednego polecenia.
Krok 4: Konwertuj pliki Pythona na pliki wykonywalne
To jest ostatni krok. Użyjemy pyinstallera, aby przekonwertować nasze pliki .py
na .exe
za pomocą jednej komendy. A więc do dzieła!
Otwórz wiersz poleceń i przejdź do katalogu, w którym znajduje się Twój plik/skrypt Pythona. Alternatywnie możesz otworzyć ten katalog za pomocą Eksploratora plików, kliknij prawym przyciskiem myszy + shift, a następnie wybierz „Otwórz Wiersz poleceń w tym folderze”. Przed konwersją pliku powinieneś sprawdzić, czy twój plik działa zgodnie z oczekiwaniami. W tym celu napisałem podstawowy skrypt Pythona, który drukuje liczbę 10, gdy jest wykonywany.
Uruchommy skrypt i sprawdźmy, czy działa dobrze przed przekonwertowaniem go na plik wykonywalny. Uruchom następujące polecenie w wierszu poleceń:
$ python name_of_your_file.py
W moim przypadku nazwa pliku to 'sum.py'.
Aby utworzyć samodzielny plik wykonywalny w tym samym katalogu, co plik Pythona, uruchom następujące polecenie:
$ pyinstaller --onefile <file_name>.py
Wykonanie tej instrukcji może zająć trochę czasu. Po zakończeniu wygeneruje trzy foldery. Plik wykonywalny można znaleźć w folderze „dist”. Zwróć uwagę, że argument „onefile” mówi pyinstallerowi, aby utworzył tylko jeden plik wykonywalny.
Następnie uruchommy nasz plik wykonywalny, aby sprawdzić, czy procedura zadziałała!
Ta-da! Zadziałało zgodnie z oczekiwaniami.
Mała wskazówka, jeśli twój plik wykonywalny zamyka się zbyt szybko, abyś mógł zauważyć dane wyjściowe, możesz dodać linię input()
na końcu swojego pliku Pythona, która utrzymuje znak zachęty otwarty podczas oczekiwania na użycie danych wejściowych. W ten sposób udało mi się również zrobić zrzut ekranu z mojego wyjścia.
Zauważ również, że jeśli twój plik wykonywalny zależy od innych plików wykonywalnych, takich jak phantomjs
, musisz trzymać je w tym samym katalogu co katalog twojego pliku Pythona, aby pyinstaller mógł włączyć je do pliku wykonywalnego.
Podsumowanie
W tym poradniku omówiliśmy szczegółowo konwersję skryptów Pythona na pliki wykonywalne przy użyciu biblioteki pyinstaller w czterech krokach. Zaczęliśmy od zainstalowania cURL, następnie pip i pyinstallera. Na koniec przekonwertowaliśmy przykładowy plik Pythona na plik wykonywalny, aby upewnić się, że procedura działa w systemie Windows.