Найти в Дзене
OVERCLOCKERS.RU

Преобразование Python кода в исполняемые файлы Windows и Android

Введение Сегодня рассмотрим способы преобразования обычного Python файла в исполняемый файл. Исполняемый файл- это тип файла, который может быть установлен или активирован на устройстве без необходимости в дополнительном ПО или библиотеках. Преобразовав свой Python-скрипт в исполняемый файл exe/apk, вы защитите свой код от модификаций или прочтения, а также упростите работу с вашей программой. Подготовка Для начала я создам python скрипт для проверки его работоспособности после преобразования в исполняемый файл. Этот код рисует черный круг с помощью модуля turtle. В исполняемый файл Windows PyInstaller Это один из популярных инструментов для создания исполняемых файлов из файлов Python. Он позволяет упаковать все зависимости вашего проекта в один исполняемый файл. Чтобы использовать PyInstaller, установите его с помощью команды в командной строке: pip install pyinstaller Теперь переходим в директорию с .py файлом cd C:\Путь_к_папке Наиболее часто используемые аргументы PyInstaller: Теп
Оглавление

Введение

Сегодня рассмотрим способы преобразования обычного Python файла в исполняемый файл.

Исполняемый файл- это тип файла, который может быть установлен или активирован на устройстве без необходимости в дополнительном ПО или библиотеках. Преобразовав свой Python-скрипт в исполняемый файл exe/apk, вы защитите свой код от модификаций или прочтения, а также упростите работу с вашей программой.

Подготовка

Для начала я создам python скрипт для проверки его работоспособности после преобразования в исполняемый файл. Этот код рисует черный круг с помощью модуля turtle.

В исполняемый файл Windows

PyInstaller

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

pip install pyinstaller

Теперь переходим в директорию с .py файлом

cd C:\Путь_к_папке

Наиболее часто используемые аргументы PyInstaller:

  • --onefile или -F: Создает одиночный исполняемый файл, включая все зависимости.
  • --onedir или -D: Создает исполняемый файл в виде набора файлов и папок, сохраняя зависимости в отдельной папке.
  • --name или -n: Устанавливает имя исполняемого файла.
  • --icon или -i: Устанавливает лого для исполняемого файла (должна быть в формате .ico).
  • --noconsole или -w: Исполняемый файл будет запускаться без консольного окна (для скрытия консольного вывода).
  • --add-data или -a: Добавляет дополнительные файлы или папки, которые должны быть включены в исполняемый файл.
  • --exclude-module или -x: Исключает указанный модуль из упаковки.
  • --hidden-import или -p: Указывает модули, которые должны быть включены в упаковку, но не обнаружены автоматически.

Теперь давайте скомпилируем наш код в exe файл. Для этого прописываем команду:

pyinstaller файл.py

После завершения процесса появилось две папки: build и dist. Папка build используется программой для хранения временных данных, необходимых для сборки исполняемого файла. В папке dist хранится результат выполненной операции.

Собранный exe будет работать только в том случае, если находится в одной папке со всеми дополнительными файлами. Если его переместить или удалить доп. файлы, то он работать не будет.

Чтобы этого избежать можно использовать аргумент --onefile или -F

pyinstaller -F файл.py

PyInstaller собрал все доп. файлы в архив и теперь в папке dist находится только нужный нам exe файл. Его можно переместить, а папки build и dist удалить.

В исполняемый файл Android

Buildozer

Это инструмент, ориентированный на Linux дистрибутивы для автоматизации сборки и упаковки приложений Python для платформы Android. Если у вас Windows, то необходимо использовать WSL или другие виртуальные машины. Ваш python файл должен быть совместимым с Android. Buidozer позволяет создавать apk из файлов Python с минимальными усилиями. Для установки прописываем это в командной строке linux:

sudo apt update && sudo apt upgrade && sudo apt install -y git zip unzip openjdk-17-jdk python3-pip autoconf libtool pkg-config zlib1g-dev libncurses5-dev libncursesw5-dev libtinfo5 cmake libffi-dev libssl-dev && pip install buildozer

Теперь нужно создать .spec файл в котором будет храниться вся информация о приложении. Сначала перейдите в нужную директорию в командной строке.

buildozer init

Необходимо переименовать python файл в main.py. Открываем появивщийся buildozer.spec файл и переходим к настройке. Вот некоторые из наиболее часто используемых параметров, которые можно настроить:

  • title - Название исполняемого файла.
  • package.name - Имя пакета вашего исполняемого файла .
  • package.domain - Доменное имя вашего приложения.
  • source.dir - Путь к .py файлу.
  • source.include_exts - Расширения файлов, которые должны быть включены в сборку.
  • version - Версия исполняемого файла.
  • requirements - Зависимости файла.

Прописываем эту команду для запуска сборки apk приложения:

buildozer android debug

В теории после сборки вы получите apk приложение. Но далеко не факт, что все получится без ошибок, с первого раза и получится вообще, ведь

-2

📃 Читайте далее на сайте