В данной статье мы рассмотрим, как упаковать свое приложение в exe файл и создать установщик программы для windows.
Python применяется для решения множества задач в различных областях деятельности. Разработав программу на Python встает вопрос ее дальнейшего распространения до конечного пользователя. Чтобы вашим приложением было удобно пользоваться, необходимо осуществить сборку кода в exe файл. Для сборки кода в exe файл необходимо воспользоваться библиотекой PyInstaller, и программой Inno Setup.
Для примера осуществим сборку проекта калькулятор. Интерфейс написан на библиотеке PySide2.
Сборка проекта в exe файл
1) Устанавливаем необходимые библиотеки через командную строку:
pip install pyinstaller
2) Далее необходимо запустить командную строку в папке с проектом. Для этого запускаем командную строку и выполняем команду:
cd "Полный путь к папке с проектом"
3) В командной строке выполняем следующую команду:
pyinstaller calculator.py
Результат выполнения команды: В папке с проектом появятся папка build со служебной информацией в которой записаны логи вместе с рабочими файлами. В дальнейшем папка build нам не пригодится. Папка dist с нашим проектом.
Открыв папку dist мы увидим файл calculator.exe, а также все связанные с проектом библиотеки и модули необходимые для работы. Теперь наш проект можно запускать на любом компьютере. Однако, есть несколько нюансов:
- при запуске проекта будет запускаться и консоль;
- в папке с проектом, находятся множество модулей, которые можно случайно удалить и тем самым повредить программу;
- у программы нет иконки.
3) Создадим исполняемый файл, который будет запускаться без консоли, будет упакован в один исполняемый файл. PyInstaller может создать однофайловую сборку, то есть один EXE-файл, который содержит весь код, библиотеки и файлы данных в одном. Также добавим иконку к нашему приложению.
Для этого запускаем командную строку в нашей папке и выполняем команду:
pyinstaller --onefile --icon=calc.ico --noconsole calculator.py
Флаг --onefile - показывает, что проект надо собрать в один файл exe, --icon принимает абсолютный или относительный путь к иконке приложения, --noconsole - сообщает, что программу необходимо запускать без консоли.
Результат выполнения команды в папке с проектом мы найдем файл calculator.exe:
Стоит заметить, что, хотя сборку из одного файла легче распространять, она выполняется медленнее, чем обычное приложение.
Мы уже можем распространять эту папку с программой среди пользователей в виде zip архива, но это не лучшее решение. Настольные приложения обычно распространяются установщиками, которые обрабатывают процесс размещения исполняемого файла в нужном месте, добавляют программу в меню Пуск создают ярлык на рабочем столе.
Создание установщика приложения
Для создания установщика необходимо воспользоваться программой Inno Setup. Скачиваем и устанавливаем программу с официального сайта.
Inno Setup система создания инсталляторов для Windows-программ с открытым исходным кодом.
1) Запускаем Inno Setup. Закрываем окно Welcome. Выбираем File >> New >> Next.
2) Заполняем поля: имя программы, версия, разработчик, сайт. Проверяем внесенные данные и нажимаем кнопку Next.
3) Данное окно оставляем без изменений и нажимаем кнопку Next.
4) В поле Application main executable file указываем путь к проекту, в поле other application files указываем все дополнительные файлы необходимые для работы программы. Другие поля оставляем без изменений и нажимаем кнопку Next.
5) Снимаем галочку с поля Associate a file type to the main executable и нажимаем кнопку Next.
6) Снимаем галочку с первого поля и отмечаем все остальные поля, после нажимаем кнопку Next.
7) Добавляем сведения о лицензии, информационные сообщения перед и после установки, после нажимаем кнопку Next.
8) Выбираем режим установки программы: от имени администратора (для всех пользователей), для локального пользователя, предоставить выбор режима установки пользователю, после нажимаем кнопку Next.
9) Выбираем язык установки, после нажимаем кнопку Next.
10) Указываем папку сохранения установщика, заполняем поле имя установщика, задаем иконку установщику, при необходимости устанавливаем пароль на установку, нажимаем кнопку Next.
11) Снимаем галочку с поля directives, нажимаем кнопку Next, а затем кнопку Finish. Подтверждаем запуск скрипта, при необходимости сохраняем скрипт для дальнейшего использования.
В результате мы получили установщик программы для windows.
В данной статье мы рассмотрели работу библиотеки Pyinstaller, научились собирать проекта в exe файл и создавать установщик для нашей программы.
С уважением, Карян Армен.
Занимаюсь профессиональной разработкой прикладных программ на Python.
email SoftSAR@yandex.ru
Telegram @SoftSar_am