Nikovit <Путешествия и разработка>

Самый простой способ скомпилировать python файл в exe

2019-04-15.png
Я перепробовал кучу разных утилит для компиляции python скрипта в .exe и везде были проблемы или не собирался файл, лог ошибками сыпал, файл собирался но не запускался и т.д.

И помог мне самый простой и легкий способ, расскажу о нем в трех шагах:

1. Устанавливаем пакет для сборки скрипта в exe
pip install pyinstaller

2. Переходим в папку со скриптом
cd c:\Свой_путь_до_скрипта

3. Запускаем компиляцию
pyinstaller --onefile main.py 

Вместо main.py подставляем свое имя скрипта если это отличается.
После сборки в папке проекта рядом с вашим скриптом появится папка dist в которой и будет находится exe файл.
Этот способ работает с установленными сторонними библиотеками python.


0
Илья
21.10.2019 22:06:03
в конце выдаёт ошибку
return code_func(co.co_argcount, co.co_kwonlyargcount, co.co_nlocals, co.co_stacksize,
TypeError: an integer is required (got type bytes)
0
Mons
11.11.2019 14:33:23
Необходимо обновить pyinstaller до совместимой версии
pip install https://github.com/pyinstaller/pyinstaller/archive/develop.tar.gz
0
Алексей
10.12.2019 18:19:05
Включи голову, тебе все одно и тоже пишут, ты когда пишешь "pip install pyinstaller" он тебе и так последнюю ставит.

Инструкция не рабочая.
0
10.12.2019 23:17:03
pip install pyinstaller может не устанавливать последнюю версию пакета если сам pip старой версии

Правильнее будет обновить pip командой:
python -m pip install --upgrade pip
а затем устанавливать pyinstaller
0
Влад
14.12.2019 02:52:39
Решил проблему? Если да, то скажи как?
0
drtgfgffdf
24.10.2019 18:50:21
У меня тоже самое
0
Василий
29.10.2019 23:18:45
У меня работает, большое спасибо автору за статью!!!
0
Garry Galler
13.01.2020 20:37:12
Вот дебилы. Python не компилируется в exe.
0
Alex
07.07.2020 04:07:29
Ты хоть сам понял, что тут написал??
А во что он компилируется?
Я вот лично написал простой скрипт, и сделал .exe-шник из него, а потом запустил его на другом  ПК, на котором отродясь не было никакого интерпретатора Python. Всё в итоге отлично запустилось и работает как положено.
0
Garry Galler
02.08.2021 05:54:11
Я то понял. А вот ты абсолютно не понимаешь в чем разница между скомпилированной программой и упакованной программой. pyinstaller создает архив. Попробуй запомнить это. И архив этот он распаковывает в директорию TEMP и только потом запускает твой код. Не ожидал такого подвоха?! Потому что нужно было матчасть изучать и и читать документацию pyinstaller'а вместо подобных бесполезных статеек.
0
Timon White
29.01.2021 11:00:43
В итоге дебилом оказался ты сам... прежде чем что-то подобное заявлять, не плохо бы погуглить вопрос...
0
Garry Galler
02.08.2021 05:47:16
Прошел год. Надеюсь ты понял, что дебилом оказался все-таки ты?
pyinstaller не компилятор. Поэтому Python не компилируется в exe, а тупо упаковывается в SFX архив вместе с готовым оболочкой для запуска кода.
И этот процесс никакого отношения к настоящей компиляции не имеет.
P.S. А теперь иди гуглить, школьник. Запрос такой: что такое компилятор.
0
Денис
12.10.2022 20:19:10
Тебе сколько лет-то быдло, чтобы дебилом человека с порога называть?
0
d_alex_s
13.02.2020 17:29:03
Ребята, инструкция отличная, НО как селениум упаковать?
0
Coffin
06.05.2020 12:41:40
"pyinstaller" не является внутренней или внешней
командой, исполняемой программой или пакетным файлом.

Help!)
0
06.05.2020 12:44:12
а вы его установили командой pip install pyinstaller ?
0
Илья
23.02.2023 19:50:15
PermissionError: [Errno 13] Permission denied: 'C:\\Users\\СУ\\Desktop\\dist\\hello.exe.notanexecutable'\

хелп ми
0
24.02.2023 10:03:50
Доступа к этой папке нет, попробуйте скопировать проект в другую директорю и запустить.
0
Жорик
29.12.2020 09:40:59
0
егор
03.04.2021 22:01:53
пишет
"pyinstaller" не является внутренней или внешней
командой, исполняемой программой или пакетным файлом.
0
04.04.2021 00:20:35
попробуйте перед вызовом pyinstaller прописать python, вот так:
python pyinstaller --onefile main.py 

и убедитесь что у вас pyinstaller  действительно установился
0
Владимир
08.04.2021 21:25:58
Помогите пожалуйста всё делал по инструкции, но сразу после ввода команды появляется ошибка:
SyntaxError: Non-UTF-8 code starting with '\xe0' in file C:\Users\Администратор\AppData\Local\Programs\Python\Python39\Scripts\pyinstaller-script.py on line 1, but no encoding declared; see http://python.org/dev/peps/pep-0263/ for details
0
09.04.2021 10:04:31
У вас скорее всего файл в кодировке windows-1251, сконвертируйте в UTF-8.
Также вначале скрипта можно прописать:
# -*- coding: utf-8 -*-
0
Владимир
09.04.2021 18:38:23
Я писал программу в IntelliJ IDEA там по умолчанию стояла кодировка UTF-8, вашу строчку в начале добавил, но не помогло. Также пробовал пересохранить файл через Блокнот в нужной кодировке тоже не сработало. Ещё у меня PyInstaller сразу не установился сначала пыталась поставиться версия 4.2, но что-то пошло не так поставилась только 3.3.1. Может с этим как-то связано? Также у меня программе используется tkinter и в принципе мне не нужна консоль.  
0
Дамир
28.10.2021 16:40:27
В конце выдаёт ошибку
pyinstaller: error: the following arguments are required: scriptname
А я правильно ввёл имя скрипта
0
ыы
19.11.2021 23:10:47
Появляется консоль на долю секунды и сразу пропадает, ничего не происходит.
Помогите!!!
0
Мирон
13.01.2022 01:37:15
У меня пишет что pyinstaller не является внутренней или внешней командой, что делать
0
Дима
27.02.2022 20:10:20
"pyinstaller" не является внутренней или внешней
командой, исполняемой программой или пакетным файлом.
0
Dsincker
12.07.2022 15:31:12
Святой ты человек! Я столько всего перепробовал и ничего не помогло, Я отчаялся, но тут наткнулся на эту статью и все сработало! Спасибо!
0
18.07.2022 15:11:39
Рад что вам помогла эта статья  :D  
0
Тимофей
07.08.2022 23:43:36
Пишет " "pyinstaller" не является внутренней или внешней
командой, исполняемой программой или пакетным файлом. "
0
Денис
23.11.2022 13:07:30
Благодарю, все работает! Только вопрос - а можно как то cmd-шный экран пр запуске exe-шника скрывать? А то вместе с графическим интерфейсом (на питоне написан) висит и черное окно cmd
0
Юрий
13.03.2023 19:56:55
получился файл с расширением exe в папке dist
запускаем программу, но когда вводим данные окно пропадает после ввода данных