Форум программистов, компьютерный форум, киберфорум
Python
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.81/123: Рейтинг темы: голосов - 123, средняя оценка - 4.81
 Аватар для snow79
1 / 1 / 0
Регистрация: 08.06.2019
Сообщений: 28

Как "положить" изображения в EXE файл созданный с PyInstaller?

08.06.2019, 12:01. Показов 28026. Ответов 28

Студворк — интернет-сервис помощи студентам
Я пытаюсь создать EXE с PyInstaller, который должен вывести в окне tkinter несколько изображений. Проблема в том, что готовый EXE не включает в себя эти изображения и выдает ошибку поскольку не может их найти. Я пытался добавлять в datas путь к этим изображениям в .spec файле, но ничего не поменялось. Как я могу "положить" в EXE файл изображения, и как мне потом к ним обращаться?
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
08.06.2019, 12:01
Ответы с готовыми решениями:

Pyinstaller: созданный .exe неправильно работает
Пишу программу по проверке знаний ударений. Файл в интерпретаторе выполняется правильно, но после превращения его в .ехе файл при помощи...

Как скомпилировать python в файл .exe на Linux с pyinstaller?
Доброе время суток всем прогерам. Мне нужна помощь. Ситуация такая. Недавно начал изучать python. Если быть точнее, я сижу на Linux Mint 18...

как раскомпилить exe файл созданный в делфи
У меня вопрос.Есть ли программы с помощью которых можно раскомпилировать созданный в Delphi *.exe файл?

28
 Аватар для snow79
1 / 1 / 0
Регистрация: 08.06.2019
Сообщений: 28
15.06.2019, 11:29  [ТС]
Студворк — интернет-сервис помощи студентам
Нет, мне не подходит этот способ, изображения очень долго грузятся, а загружать их в код крайне долго и неудобно.
0
 Аватар для snow79
1 / 1 / 0
Регистрация: 08.06.2019
Сообщений: 28
17.06.2019, 13:04  [ТС]
Проблема решена.
0
1303 / 843 / 409
Регистрация: 12.03.2018
Сообщений: 2,305
17.06.2019, 13:20
Цитата Сообщение от snow79 Посмотреть сообщение
Проблема решена.
так напишите решение, чтобы другие программисты, которые столкнутся с данной проблемой, могли найти решение
2
 Аватар для snow79
1 / 1 / 0
Регистрация: 08.06.2019
Сообщений: 28
18.06.2019, 13:34  [ТС]
# в spec файле
a = Analysis(['ваш_скрипт.pyw'],
pathex=['.'],
binaries=[('file.jpg', '.')],
....
)
Python
Python
1
2
3
4
5
6
7
8
9
10
# в скрипте 
def resource_path(relative):
 
    if hasattr(sys, '_MEIPASS'):
        return os.path.join(sys._MEIPASS, relative)
    else:
        return os.path.join(os.path.abspath("."), relative)
 
# чтобы получить путь до картинки из временной  папки пишем 
img_path = resource_path('file.jpg')
1
0 / 0 / 1
Регистрация: 26.11.2016
Сообщений: 19
28.11.2019, 08:39
snow79, Вы не могли бы поподробнее написать, где вы нашли этот скрипт и как вы его поняли. Попробовал сделать по этому примеру и не получается. Временная директория создаётся, но потом скрипт все равно не может корректно обратиться к этому файлу, пишет он не существует.
0
Эксперт Python
5439 / 3860 / 1215
Регистрация: 28.10.2013
Сообщений: 9,552
Записей в блоге: 1
28.11.2019, 13:29
Цитата Сообщение от PsyPerception Посмотреть сообщение
Вы не могли бы поподробнее написать, где вы нашли этот скрипт и как вы его поняли.
Если бы вы прошлись по темам товарища, то узнали бы что скрипт он нашел в своей же собственной соседней теме по pyinstaller и файлам. А сам исходник скрипта уже давно лежит на стековерфлоу и гуглится на раз. И понимать там нечего - sys._MEIPASS это атрибут, которому pyinstaller присваивает путь распаковки архива программы во временный каталог. Все.

Цитата Сообщение от PsyPerception Посмотреть сообщение
пишет он не существует.
Так может его там и нет?
0
0 / 0 / 1
Регистрация: 26.11.2016
Сообщений: 19
06.11.2020, 19:25
Подсмотрено на просторах интернета:
"В коде до загрузки файлов необходимо добавить функцию, которая позволит программе найти необходимые для работы файлы независимо от своего расположения".

Python
1
2
3
4
def resource_path(relative):
    if hasattr(sys, "_MEIPASS"):
        return os.path.join(sys._MEIPASS, relative)
    return os.path.join(relative)
Вставляете это в свой код, она возвращает путь к той самой заветной временной папке, которая создается, когда вы запускаете сформированный пайинсталлером exe-шник. И конечно же перед этим всем надо положить это изображение при генерации exe-шника в DATAS.
0
Эксперт Python
5439 / 3860 / 1215
Регистрация: 28.10.2013
Сообщений: 9,552
Записей в блоге: 1
06.11.2020, 19:43
Цитата Сообщение от PsyPerception Посмотреть сообщение
Подсмотрено на просторах интернета:
Зачем дублировать уже выложенный код и объяснение?
0
0 / 0 / 1
Регистрация: 26.11.2016
Сообщений: 19
06.11.2020, 21:21
Цитата Сообщение от Garry Galler Посмотреть сообщение
Зачем дублировать уже выложенный код и объяснение?
Не увидел что ответ уже был дан, подумал вопрос так и лежит пылится без ответа. Ищу как удалить свое безобразие.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
06.11.2020, 21:21

как раскомпилить exe файл созданный в делфи
У меня вопрос.Есть ли программы с помощью которых можно раскомпилировать созданный в Delphi *.exe файл?

Как "положить" Expolrer.exe или вызвать/положить любое другое приложение
Я вот написал псевдо троян, для удаленного управления второго компа, ведь лень вставать с одного места что выключить компьютер, выключение...

PyInstaller: Не запускается exe файл
Столкнулся с проблемой: Появилась потребность закрыть исходники и я использовал модуль pycryptodome и pyinstaller PyInstaller 3.6 ...

Pyinstaller создаёт файл без расширения exe
Здравствуйте, использую pyinstaller 3.6, python 3.7 Появилась потребность в создании пакетов для windows на debian 10. Установил, всё...

Добавление описания в файл EXE, собранном в Pyinstaller
Добрый день! Как добавить описание при сборке в файл EXE (один файл), используя Pyinstaller. Например, хотелось бы добавить следующую...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
29
Ответ Создать тему
Новые блоги и статьи
Беседа с ИИ о программистах, недопускающих к созданию и правке кода генеративные ИИ и причины этого
zorxor 21.09.2026
Раньше я радовался или получал некоторые эмоции, пусть небольшие, но всё же, от самого процесса написания кода, рекомпиляции и запуска, видя постепенное развитие программы и прочее. А теперь лень. . .
Мобильное приложение ColorStep
pavlinmavlin 17.09.2026
Реализовал приложение Красный, Зеленый, Синий в Unity3d + c#. Название изменил на ColorStep. Приложение прошло модерацию и теперь доступно для скачивания. Делал его сам, шаг за шагом — и вот,. . .
Запрет дублирования строк в табличной части
Maks 13.09.2026
Реализация из решения ниже выполнена на нетиповом справочнике "Нормы ТО" с табличной часть "Виды ТО", разработанного в КА2, со следующими реквизитами: - ВидТО (СправочникСсылка. ВидыТО); - ВидГСМ. . .
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Jin X 06.09.2026
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр. Работая с форумом и нейросетями в браузере часто хочется что-то подкорректировать или добавить какого-то функционала. Ниже прикреплён. . .
Программа опроса у.з. расходомера SLS-720F
Argus19 02.09.2026
Программа опроса у. з. расходомера SLS-720F Программа опрашивает один раз в минуту три ультразвуковых расходомера SLS-720F через интерфейс RS-485 по протоколу Modbus RTU. Опрашиваются регистры. . .
Hyper-V: Компьютер должен поддерживать доверенный платформенный модуль 2.0.
Maks 31.08.2026
При установке Windows 11 на виртуальную машину Hyper-V 2-го поколения вылезла такая ошибка: Решение: в параметрах виртуальной машины, в разделе "Безопасность" (Security) активировать флаг. . .
Архитектура биовида Стива в Майнкрафте: Зачем бонобо кубический каннибализм
anaschu 30.08.2026
Кубический Вагинокапитализм в Minecraft: Математический инвариант ОДУ и рок Стивов-бонобо Главная задача разработанной «Модели Всего» — наглядно продемонстрировать наличие системной «судьбы». . .
Оттачиваю умение писать js программы.
russiannick 30.08.2026
Проектом выходного дня стало написание Книги шифров Виженера. Итогом стала версия 200, синий туман. Синий туман назван так, потому что замораживает текст под собой. Нажатие синих кнопок управляют. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru