Как установить pyinstaller для Windows 10

Обновлено: 21.11.2024

Вы только что создали отличное новое приложение. Может быть, это игра или, может быть, это просмотрщик изображений. Каким бы ни было ваше приложение, вы хотите поделиться им со своим другом или членом семьи. Однако вы знаете, что они не будут знать, как установить Python или какие-либо зависимости. Что вы делаете? Вам нужно что-то, что превратит ваш код в исполняемый файл!

В Python есть множество различных инструментов, которые можно использовать для преобразования кода Python в исполняемый файл Windows. Вот несколько различных инструментов, которые вы можете использовать:

  • PyInstaller
  • py2exe
  • cx_freeze
  • Нуитка
  • Портфель

Все эти различные инструменты можно использовать для создания исполняемых файлов для Windows. Они работают немного по-разному, но конечным результатом является то, что у вас будет исполняемый файл и, возможно, некоторые другие файлы, которые вам нужно распространять.

PyInstaller и Briefcase можно использовать для создания исполняемых файлов Windows и MacOS. Nuitka немного отличается тем, что превращает ваш код Python в код C, прежде чем преобразовать его в исполняемый файл. Это означает, что результат оказывается намного меньше, чем исполняемый файл PyInstaller.

Однако в этой статье вы сосредоточитесь на PyInstaller. Это один из самых популярных пакетов для этой цели, и он имеет большую поддержку. PyInstaller также имеет хорошую документацию и множество руководств по нему.

В этой статье вы узнаете о:

  • Установка PyInstaller
  • Создание исполняемого файла для приложения командной строки
  • Создание исполняемого файла для графического интерфейса

Давайте превратим код в исполняемый файл Windows!

Установка PyInstaller

Для начала вам необходимо установить PyInstaller. К счастью, PyInstaller — это пакет Python, который можно легко установить с помощью pip:

Эта команда установит PyInstaller и все необходимые зависимости на вашем компьютере. Теперь вы должны быть готовы создать исполняемый файл с помощью PyInstaller!

Создание исполняемого файла для приложения командной строки

Следующий шаг — выбрать код, который вы хотите превратить в исполняемый файл. Вы можете использовать утилиту PySearch из главы 32 моей книги Python 101: 2nd Edition и превратить ее в двоичный файл. Вот код:

Затем откройте командную строку (cmd.exe) в Windows и перейдите в папку, в которой находится файл pysearch.py. Чтобы превратить код Python в двоичный исполняемый файл, вам нужно выполнить следующую команду:

Если Python отсутствует в вашем пути Windows, вам может потребоваться ввести полный путь к pyinstaller, чтобы он запустился. Он будет находиться в папке Scripts везде, где в вашей системе установлен Python.

Когда вы запустите эту команду, вы увидите вывод, похожий на следующий:

PyInstaller очень многословен и выводит МНОГО информации. Когда он будет завершен, у вас будет папка dist с папкой pysearch внутри нее. В папке pysearch находится множество других файлов, в том числе файл с именем pysearch.exe. Вы можете попробовать перейти к папке pysearch в командной строке, а затем запустить pysearch.exe:

Похоже, это довольно успешная сборка! Однако, если вы хотите передать исполняемый файл своим друзьям, вам придется передать им всю папку pysearch, так как все остальные файлы в ней также необходимы.

Вы можете решить эту проблему, передав флаг --onefile следующим образом:

Вывод этой команды аналогичен первой команде. На этот раз, когда вы зайдете в папку dist, вы найдете там один файл с именем pysearch.exe вместо папки, полной файлов.

Создание исполняемого файла для графического интерфейса

Создание исполняемого файла для графического интерфейса немного отличается от создания приложения командной строки. Причина в том, что графический интерфейс является основным интерфейсом, а по умолчанию в PyInstaller пользователь будет использовать командную строку или окно консоли. Если вы запустите любую из команд PyInstaller, о которых вы узнали в предыдущем разделе, она успешно создаст исполняемый файл. Однако, когда вы перейдете к использованию своего исполняемого файла, вы увидите, что в дополнение к вашему графическому интерфейсу появляется командная строка.

Обычно вы этого не хотите. Чтобы отключить командную строку, вам нужно использовать флаг --noconsole.

Чтобы проверить, как это будет работать, возьмите код средства просмотра изображений, созданный с помощью wxPython, из главы 42 Python 101: 2nd Edition. Вот еще раз код для вашего удобства:

Чтобы превратить его в исполняемый файл, выполните следующую команду PyInstaller:

Обратите внимание, что здесь не используется флаг --onefile. Защитник Windows помечает графические интерфейсы, созданные с помощью --onefile, как вредоносные программы и удаляет их. Вы можете обойти это, не используя флаг --onefile или подписывая исполняемый файл цифровой подписью. Начиная с Windows 10, все приложения с графическим интерфейсом должны быть подписаны, иначе они считаются вредоносными.

Подведение итогов

Существует множество различных способов создания исполняемого файла с помощью Python. В этой статье вы использовали PyInstaller. Вы узнали о следующих темах:

  • Установка PyInstaller
  • Создание исполняемого файла для приложения командной строки
  • Создание исполняемого файла для графического интерфейса

PyInstaller имеет множество других флагов, которые можно использовать для изменения его поведения при создании исполняемых файлов. Если у вас возникнут проблемы с PyInstaller, вы можете обратиться к списку рассылки. Или вы можете выполнить поиск в Google и на StackOverflow. Большинство часто возникающих проблем описаны либо в документации PyInstaller, либо легко обнаруживаются с помощью поиска в Интернете.

PyInstaller объединяет приложение Python и все его зависимости в один пакет.

Навигация

Ссылки на проекты

Статистика

Просмотрите статистику по этому проекту через Libraries.io или с помощью нашего общедоступного набора данных в Google BigQuery

Лицензия: Стандартная общественная лицензия GNU v2 (GPLv2) (GPLv2 или более поздней версии со специальным исключением, позволяющим использовать PyInstaller для создания и распространения несвободных программ (включая коммерческие))

Автор: Хартмут Гебель, Джованни Баджо, Давид Вьерра, Давид Кортези, Мартин Зибрики

Теги упаковка, приложение, приложения, пакет, преобразование, автономный, исполняемый файл, pyinstaller, cxfreeze, замораживание, py2exe, py2app, bbfreeze

Требуется: Python = 3.6

Сопровождающие

Классификаторы

  • Статус разработки
    • 6 – Для взрослых
    • Консоль
    • Разработчики
    • Другая аудитория
    • Системные администраторы
    • Одобрено OSI :: Стандартная общественная лицензия GNU v2 (GPLv2)
    • Английский
    • MacOS :: MacOS X
    • Майкрософт :: Windows
    • POSIX
    • POSIX :: AIX
    • POSIX :: BSD
    • POSIX :: Linux
    • POSIX :: SunOS/Solaris
    • С
    • Питон
    • Питон :: 3
    • Python :: 3 :: Только
    • Питон :: 3.6
    • Питон :: 3.7
    • Питон :: 3.8
    • Питон :: 3.9
    • Питон :: 3.10
    • Python :: Реализация :: CPython
    • Разработка программного обеспечения
    • Разработка программного обеспечения :: Инструменты сборки
    • Разработка программного обеспечения :: Интерпретаторы
    • Разработка ПО :: Библиотеки :: Модули Python
    • Система :: Установка/настройка
    • Система :: Распространение программного обеспечения
    • Утилиты

    Описание проекта

    PyInstaller объединяет приложение Python и все его зависимости в один пакет. Пользователь может запустить упакованное приложение без установки интерпретатора Python или каких-либо модулей.

    PyInstaller читает написанный вами скрипт Python. Он анализирует ваш код, чтобы обнаружить все остальные модули и библиотеки, необходимые вашему сценарию для выполнения. Затем он собирает копии всех этих файлов, включая активный интерпретатор Python! – и помещает их вместе с вашим скриптом в одну папку или, при желании, в один исполняемый файл.

    PyInstaller тестируется на Windows, Mac OS X и GNU/Linux. Однако это не кросс-компилятор: чтобы создать приложение для Windows, вы запускаете PyInstaller в Windows; чтобы создать приложение GNU/Linux, вы запускаете его в GNU/Linux и т. д. PyInstaller успешно используется с AIX, Solaris, FreeBSD и OpenBSD, но не тестируется на них в рамках тестов непрерывной интеграции.

    Основные преимущества

    • По умолчанию работает с любой версией Python 3.6–3.10.
    • Полностью мультиплатформенный и использует поддержку ОС для загрузки динамических библиотек, что обеспечивает полную совместимость.
    • Корректно объединяет основные пакеты Python, такие как numpy, PyQt5, PySide2, Django, wxPython, matplotlib и другие, готовые к использованию.
    • Совместимость со многими готовыми пакетами сторонних производителей. (Все необходимые приемы для работы внешних пакетов уже интегрированы.)
    • Такие библиотеки, как PyQt5, PySide2, wxPython, matplotlib или Django, полностью поддерживаются без необходимости вручную обрабатывать подключаемые модули или внешние файлы данных.
    • Работает с подписью кода в OS X.
    • Объединяет библиотеки DLL MS Visual C++ в Windows.

    Установка

    PyInstaller доступен в PyPI. Вы можете установить его через pip :

    Требования и протестированные платформы

    • 3.6–3.10 1.0+ (только при использовании шифрования байт-кодом). Вместо установки tinyaes pip install pyinstaller[encryption].
    • PyInstaller должен работать в Windows 7 и более поздних версиях, но мы официально поддерживаем только Windows 8+.
    • Для поддержки Python, установленного из Магазина Windows без использования виртуальных сред, требуется PyInstaller 4.4 или более поздней версии.
    • ldd: Консольное приложение для печати общих библиотек, необходимых для каждой программы или общей библиотеки.Обычно это можно найти в дистрибутиве glibc или libc-bin .
    • objdump: Консольное приложение для отображения информации из объектных файлов. Обычно это можно найти в дистрибутиве binutils .
    • objcopy: Консольное приложение для копирования и перевода объектных файлов. Обычно это также можно найти в дистрибутиве binutils.

    Использование

    Основное использование очень простое, просто запустите его против основного скрипта:

    Подробнее см. в руководстве.

    Непроверенные платформы

    Были добавлены следующие платформы, и мы приветствуем любые отзывы или улучшения по ним.

    • AIX 6.1 или новее. PyInstaller не будет работать со статически связанными библиотеками Python.
    • лдд

    Прежде чем использовать какую-либо предоставленную платформу, вам необходимо создать загрузчик PyInstaller, поскольку мы не поставляем бинарные пакеты. Загрузите исходный код PyInstaller и соберите загрузчик:

    Затем установите PyInstaller:

    или просто используйте его непосредственно из исходного кода (pyinstaller.py).

    Поддержка

    Изменения в этой версии

    Подробный список изменений в этом выпуске можно найти в разделе «Журнал изменений» руководства.

    Pypiwin32 — это переупаковка pywin32 для использования нормальных инструментов упаковки (а именно, колес). Он переупакован BDFL проекта Twisted. Если вы используете pip или virtualenvs (и вы должны использовать pip и virtualenvs, если это не так, начните), используйте pypiwin32.

    1. введите следующую команду cd c:python27scripts нажмите Enter, это должно быть там, где находится ваш файл pip.exe.
    2. После того, как вы окажетесь в этом каталоге, введите pip install pyinstaller и нажмите Enter.

    Как таким образом создать EXE-файл?

    1. Откройте Пуск. .
    2. Введите блокнот в меню «Пуск». На вашем компьютере будет выполнен поиск приложения "Блокнот".
    3. Нажмите "Блокнот".
    4. Введите программный код вашего EXE-файла.
    5. Нажмите "Файл".
    6. Нажмите «Сохранить как…».
    7. Нажмите раскрывающееся меню "Тип файла".
    8. Нажмите "Все файлы".

    Сколько времени занимает PyInstaller?

    Файл PyInstaller весит почти 9 МБ, и его открытие занимает 10 секунд на довольно мощном процессоре.

    Как использовать py2exe?

    Есть несколько простых шагов, необходимых для использования py2exe после его установки: Создайте/протестируйте свою программу. Создайте сценарий установки (setup.py) Запустите сценарий установки. Протестируйте свой исполняемый файл. Предоставление DLL среды выполнения Microsoft Visual C. 5.1. Питон 2.4 или 2.5. 5.2. Питон 2.6, 2.7, 3.0, 3.1. 5.2.1. Создайте установщик, если применимо.

    Как запустить исполняемый файл Python в Windows?

    Создание исполняемого файла из сценария Python с помощью Pyinstaller. Шаг 1. Добавьте Python в путь Windows. Для начала вы можете добавить Python в путь Windows. Шаг 2: Откройте командную строку Windows. Затем откройте командную строку Windows: Шаг 3: Установите пакет Pyinstaller. Шаг 4: Сохраните ваш скрипт Python. Шаг 5: Создайте исполняемый файл с помощью Pyinstaller. Шаг 6. Запустите исполняемый файл.

    Где установлен Python?

    Перейдите в каталог C:UsersPattisAppDataLocalProgramsPythonPython37 (или в любой другой каталог, в котором был установлен Python: см. всплывающее окно для шага 3 установки). Дважды щелкните значок/файл python.exe. Появится следующее всплывающее окно.

    Что такое скрипт Python?

    Сценарии можно использовать повторно По сути, сценарий представляет собой текстовый файл, содержащий операторы, из которых состоит программа Python. Создав сценарий, вы можете выполнять его снова и снова без необходимости каждый раз вводить его заново.

    В чем польза PyInstaller?

    PyInstaller: Пакет приложений Python (Windows, Mac и Linux) PyInstaller — это программа, используемая для преобразования сценариев Python в автономные приложения. PyInstaller позволяет запускать приложения, написанные на Python, на компьютере, не требуя от пользователя установки Python.

    Что означает .exe?

    EXE – это расширение файла для формата исполняемого файла. Исполняемый файл — это файл, содержащий программу, то есть файл определенного типа, который может быть выполнен или запущен как программа на компьютере. Исполняемый файл может быть запущен программой в Microsoft DOS или Windows с помощью команды или двойного щелчка.

    Что такое py-файл?

    Файл PY — это программный файл или скрипт, написанный на Python, интерпретируемом объектно-ориентированном языке программирования. Его можно создать и отредактировать с помощью текстового редактора, но для запуска требуется интерпретатор Python. Файлы PY часто используются для программирования веб-серверов и других административных компьютерных систем.

    Как запустить файл Python в Windows без Python?

    Единственный реальный способ запустить сценарий в Windows без установки Python — использовать py2exe для его упаковки в исполняемый файл. Py2exe, в свою очередь, проверяет ваш скрипт и встраивает в него нужные модули и интерпретатор Python для его запуска.

    Как вы программируете на Python?

    Напишите простую программу на Python Откройте меню «Пуск» и выберите Python (командная строка). Вы должны получить приглашение, похожее на >>>. В командной строке введите следующее. Используйте одинарную кавычку в начале и в конце — она находится рядом с клавишей Enter: Нажмите клавишу Enter. Python запускает введенный вами код.

    Как запустить файл .PY?

    Часть 2. Запуск файла Python Open Start. . Найдите командную строку. Введите cmd, чтобы сделать это. Нажмите. Командная строка. Перейдите в каталог вашего файла Python. Введите cd и пробел, затем введите адрес «Расположение» для вашего файла Python и нажмите ↵ Enter . Введите команду «python» и имя вашего файла. Нажмите ↵ Enter .

    Как запустить Python без установки?

    Используйте py2exe или одну из других утилит для сборки exe-файлов для Python в Windows. На других платформах просто используйте скрипт Python. Эта программа может заморозить ваш код Python в файле .exe и некоторых других файлах pyd, ее можно запустить без установки Python.

    Для чего используется Python?

    Python — это язык программирования общего назначения и высокого уровня. Вы можете использовать Python для разработки настольных графических приложений, веб-сайтов и веб-приложений. Кроме того, Python как язык программирования высокого уровня позволяет вам сосредоточиться на основных функциях приложения, решая общие задачи программирования.

    Мне нужно установить PyInstaller в автономном режиме. У меня уже есть setuptools, но он все равно пытается его загрузить. Что я делаю неправильно? Если это из-за --ignore-installed в команде pip, как мне это отключить?

    2 ответа 2

    Мне нужно установить PyInstaller в автономном режиме.

    Предпосылки

    Загрузите копии всех соответствующих модулей, необходимых для установки PyInstaller. pip обычно связывается с индексом пакетов Python (PyPI) для сбора этих файлов, но вы можете собрать их вручную. К ним относятся:

    В вашем случае вы можете пропустить PyInstaller, setuptools и pywin32-ctypes, но вам, вероятно, все же потребуются копии, по крайней мере, future, altgraph и pefile. Также имейте в виду, что хотя ваша версия setuptools, вероятно, будет работать, она устарела.

    Если вы не хотите загружать необходимые файлы выше по отдельности с соответствующих страниц PyPI (связанных), вы можете просто использовать пример:

    с ПК с pip и возможностью подключения к PyPI, чтобы локально сохранить PyInstaller и его зависимости. Затем вы можете перенести эти файлы на автономный компьютер по своему усмотрению.

    Обратите внимание, что хотя обычно лучше всего загружать модули, используя копию pip, связанную с той же версией Python, которая используется, например. на вашем автономном компьютере, в этом случае это не имеет большого значения (если вы не используете Python 2), поскольку указанные выше файлы в настоящее время должны быть совместимы с большинством версий Python 3.

    Установка

    На автономном компьютере поместите все файлы, которые вы скачали выше, в одну папку, например:

    Затем запустите pip с параметрами --no-use-pep517 , --no-index и --find-links, например:

    Не забудьте указать, например, tar.gz для PyInstaller (поэтому используйте, например, PyInstaller-3.6.tar.gz , а не только PyInstaller-3.6 ).

    Вы можете прочитать больше об этих вариантах установки pip и в целом о PEP 517 по соответствующим ссылкам, но в качестве краткого обзора:

    --no-use-pep517 обходит проблему с pip и PyInstaller, из-за которой не удается установить модули в текущем рабочем каталоге.

    Читайте также: