И�пользование PyInstaller дл� удобного ра�про�транени� приложений на Python

Дл� чего и�пользует�� PyInstaller?

PyInstaller читает Python-�крипт, напи�анный вами. Он анализирует ваш код дл� определени� в�ех других модулей и библиотек, необходимых дл� выполнени� вашего �крипта. Затем он �обирает копии в�ех �тих файлов - включа� активный интерпретатор Python!

Зачем и�пользовать Pyinstaller дл� упаковки Python?

PyInstaller и�пользует�� дл� упаковки кода Python в автономные и�полн�емые приложени� дл� различных операционных �и�тем. Он берет �крипт Python и �оздает одиночный и�полн�емый файл, который �одержит в�е необходимые зави�имо�ти и может быть запущен на компьютерах, на которых не у�тановлен Python. Это облегчает ра�про�транение и развертывание приложений на Python, по�кольку пользователю не нужно у�танавливать Python и необходимые модули на �воей �и�теме дл� запу�ка приложени�. Кроме того, PyInstaller также может и�пользовать�� дл� �оздани� однофайловых и�полн�емых файлов, которые пред�тавл�ют �обой единый и�полн�емый файл, �одержащий в�е необходимые зави�имо�ти дл� приложени�. Это может �делать ра�про�транение приложени� еще проще, по�кольку пользователю нужно лишь загрузить один файл.

Как у�тановить PyInstaller

PyInstaller до�тупен как обычный пакет Python. И�ходные архивы дл� выпущенных вер�ий до�тупны на PyPi, но у�тановить по�леднюю вер�ию легче � помощью pip:

C:\> pip install pyinstaller

Чтобы обновить �уще�твующую у�тановку PyInstaller до по�ледней вер�ии, и�пользуйте:

C:\> pip install --upgrade pyinstaller
Чтобы у�тановить текущую вер�ию разработки, и�пользуйте:
C:\> pip install https://github.com/pyinstaller/pyinstaller/tarball/

Как �оздать EXE � помощью PyInstaller

Мы возьмем один файл Python в каче�тве примера, чтобы подробно объ��нить шаги по упаковке. Возьмем Python 3.11.0 в каче�тве примера по�ле у�тановки aspose.cells.

  1. Создайте образец файла Python � именем example.py.
    import os
    from jpype import *
    
    __cells_jar_dir__ = os.path.dirname(__file__)
    addClassPath(os.path.join(__cells_jar_dir__, "aspose-cells-23.1.jar"))
    addClassPath(os.path.join(__cells_jar_dir__, "bcprov-jdk15on-160.jar"))
    addClassPath(os.path.join(__cells_jar_dir__, "bcpkix-jdk15on-1.60.jar"))
    addClassPath(os.path.join(__cells_jar_dir__, "JavaClassBridge.jar"))
    
    import jpype
    import asposecells
    jpype.startJVM()
    from asposecells.api import Workbook, FileFormatType, CellsHelper
    
    print(CellsHelper.getVersion())
    workbook = Workbook(FileFormatType.XLSX)
    workbook.getWorksheets().get(0).getCells().get("A1").putValue("Hello World")
    workbook.save("output.xlsx")
    
    jpype.shutdownJVM()
  2. Создайте папку под названием c:\app и �копируйте файл example.py (прикрепленный) в c:\app.
  3. Откройте командную �троку и выполните команду pyinstaller example.py.
    C:\app> pyinstaller example.py
  4. Скопируйте файлы-заготовки (aspose-cells-xxx.jar, bcprov-jdk15on-160.jar, bcpkix-jdk15on-1.60.jar, JavaClassBridge.jar. Они наход�т�� в папке C:\Python311\Lib\site-packages\asposecells\lib) в c:\app.
  5. Отредактируйте файл � �уффик�ом spec, чтобы добавить �екцию данных, пример под названием example.spec. todo:image_alt_text
  6. Выполните pyinstaller example.spec в окне командной �троки.
    C:\app> pyinstaller example.spec
  7. Перейдите в каталог C:\app\dist\example, и вы найдете файл example.exe.
Morty Proxy This is a proxified and sanitized view of the page, visit original site.