TGViewer
Codeby Codeby @codeby_sec · 37.1K subscribers
Post #9852 3.75K
PyInstaller: Упаковка Python-приложений в исполняемые файлы

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


👉Преимущества
- Работает с Python версий 3.8–3.14
- Поддерживает Windows (32/64-bit, ARM64), Linux (glibc/musl), macOS (x86_64/arm64)
- Корректно упаковывает популярные пакеты: numpy, PyQt5/PyQt6, PySide2/PySide6, wxPython, matplotlib и другие
- Поддерживает код-сайн на macOS
- Включает MS Visual C++ DLL на Windows
- Не требует кросс-компиляции (сборка выполняется на целевой платформе)

⬇️Установка
sudo apt install pyInstaller

Проверка
pyInstaller -h


⏺️Создание одно папочного пакета (режим по умолчанию)
pyinstaller script.py

Создает папку dist/script/ с исполняемым файлом и всеми зависимостями

⏺️Создание однофайлового исполняемого пакета
pyinstaller --onefile script.py

Создает один исполняемый файл dist/script.exe (или script на Linux/macOS), который распаковывается во временную папку при запуске

⏺️Добавление дополнительных файлов данных
pyinstaller --add-data "config.ini:." --add-data "images:images" script.py

Формат: "source:dest_dir". Для Windows разделитель — ;, для Linux/macOS — :.

⏺️Указание путей поиска импортов
pyinstaller --paths ./external_libs --paths ./helpers script.py


⏺️Исключение модулей
pyinstaller --exclude-module tkinter --exclude-module test script.py


⏺️Упаковка веб-приложения (Flask/Django)
pyinstaller --onefile --add-data "templates:templates" --add-data "static:static" --hidden-import jinja2 run.py


⏺️Создание пакета для многократного использования с очисткой кэша
pyinstaller --clean --distpath ./release --workpath ./build_tmp --onefile script.py


🔎Ограничения и требования
- Cборка выполняется на той же ОС, для которой создается пакет (не кросс-компиляция)
- Поддерживаются указанные версии (Python 3.10.0 содержит баг, несовместимый с PyInstaller)
- Требуются ldd, objdump, objcopy (пакет binutils)
- Однофайловые пакеты включают интерпретатор и библиотеки, что увеличивает размер (обычно 5–50 МБ)
- Некоторые антивирусные программы могут ложно срабатывать на упакованные приложения

#PyInstaller #tool #pentest #Python

🔗 Все наши каналы 🔁 Все наши чаты 🪧 Для связи с менеджером
  • ❤ 8
  • 👍 5
  • 🔥 4
More from @codeby_sec
  1. Sep 30, 2026🧠Перед вами доска с уликами. Соберите портрет того, кто оставил эти следы! Кто этот подоз…
  2. Sep 30, 2026Кибератака началась. Время пошло ⏱️ «Не защищены» — подкаст о том, что происходит после вз…
  3. Sep 30, 2026💻 Turbo Intruder — быстрый генератор HTTP-запросов для Burp Suite Turbo Intruder — расшир…
  4. Sep 29, 2026🧠open-kritt Платформа с открытым исходным кодом для проведения тестирований по безопаснос…
  5. Sep 29, 2026🔥 Ищем Go Backend Developer (Сети, DevOps, Security) Мы — технологический стартап, делаем…
  6. Sep 29, 2026NIST запретил менять пароли. ФСТЭК — обязал. Как жить в 2026? Представьте ситуацию: на атт…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →