Exe файл python не открывается

Программа .exe работает некорректно, после pyinstaller. Как найти проблему?

Здравствуйте!
Я написал программу в pyCharm и она отлично работает если её запускать в pyCharm.
Я решил сделать .exe файл при помощи pyinstaller, py2exe, auto_py_to_exe, cx_Freeze, на выходе имею .exe-файл файл который начинает правильно отрабатывать, но в итоге программа заходит в блок except. Также пробовал использовать другие библиотеки для создания .exe, cx_Freeze, auto-py-to-exe
Python 3.6 32-bit
Также у меня создался файл *.pyc, и если его запустить, то отрабатывает всё хорошо.
Основной код больше, скину саму суть:

Подключаемся к ОРС: import OpenOPC opc = OpenOPC.client() servers = opc.servers() print(servers) try: opc.connect(servers[0]) except: print("не удалось подключиться к ОРС - серверу") while: try: #обрабатываем полученнные значения except: print("error read item") opc.close()

Как я понимаю проблема в виртуальной среде, но в cmd.exe я установил все необходимые библиотеки как в проекте pycharm.
Вот так отрабатывает скрипт OpcSender.py из консоли или из pyCharm
5ee4cf446397e452835910.png
Вот так отрабатывает OpcSender.exe
5ee4d00c712e2569966194.png
Что посоветуете? заранее спасибо.

Средний 14 комментариев

Источник

Не работает программа после компиляции в exe ModuleNotFoundError

), то при запуске EXEшника выдает ошибку «ModuleNotFoundError: No module named ‘pyautogui'».
Как это исправить?

Программа после компиляции в exe из python не работает без окна командной строки
Сделал программу на питоне, но после того как скомпилировал её в exe файл, так что бы не.

Не работает JDBC драйвер после компиляции jar файла в exe
Здаствуйте. Создал JavaFx приложения на java с использованием MySql базы данных. Для этого.

Не работает программа после компиляции
После компиляции проекта не могу ничего делать. появляется главное окно и показывает что идет.

Не работает программа после компиляции
Вот сама программа: Все компилирует не выдавая ошибки и после компиляции "435.exe": Загружено.

Эксперт PythonЭксперт Java

ЦитатаСообщение от emkaa Посмотреть сообщение

ЦитатаСообщение от iSmokeJC Посмотреть сообщение

Эксперт PythonЭксперт Java

Основная задача — запуск программы на компьютерах, где python не установлен.
Как скомпилировать в EXE, чтобы не возникало ошибки при запуске?

Эксперт PythonЭксперт Java

PS. pyinstaller не компилирует в .exe

ЦитатаСообщение от iSmokeJC Посмотреть сообщение

с такими советами, тебе в ветку С++

ЦитатаСообщение от iSmokeJC Посмотреть сообщение

ЦитатаСообщение от emkaa Посмотреть сообщение

1. Оставляете в покое pyinstaller
2. Скачиваете python embedded инструкция
3. Создаете файл .bat для запуска скрипта
4. Делаете ярлык для запуска .bat

Ношу свою прогу с собой на флешке и запускаю где это нужно

ЦитатаСообщение от emkaa Посмотреть сообщение

pyinstaller штука прикольная, когда на ютубе делают .exe для 10 строк кода и кнопки, когда с дефолтными настройками он все пакует. В общем pyinstaller не так прост в обращении как его представляют на просторах интернета и с ним придется изрядно повозится.

ЦитатаСообщение от Михалыч Посмотреть сообщение

1. Оставляете в покое pyinstaller
2. Скачиваете python embedded инструкция
3. Создаете файл .bat для запуска скрипта
4. Делаете ярлык для запуска .bat
Ношу свою прогу с собой на флешке и запускаю где это нужно

Читайте также:  Cpp inline что это

Ципихович Эндрю, с чем связан скептицизм? вполне рабочий вариант)

ЦитатаСообщение от Михалыч Посмотреть сообщение

ЦитатаСообщение от Михалыч Посмотреть сообщение

emkaa, я рад, что у вас получилось!

От меня «+» что попробовали и разобрались)

ЦитатаСообщение от Михалыч Посмотреть сообщение

Вам поможет параметр «скрытый импорт» или «вся коллекция»
pyinstaller -F WorkHelper1.py —hidden-import «pyautogui» и\или —collect-all «pyautogui»

вот дошли руки, точнее появился материал с чего можно попытаться сделать экзешник, стал смотреть
пдф файл: python embedded или как добавить python в свое
приложение
так там же описано как сделать, НО не экзешник как сказано в посте № 1

ЦитатаСообщение от emkaa Посмотреть сообщение

а там описано как НЕ устанавливая питон его заиметь.
кстати как сказано в пдф файле
Затем находим чистый Windows 10,
где Python никогда не был установлен. Скачиваем архив и распаковываем.
Запускаем любой тестовый скриптик.
есть у кого готовый? с какими модулями?

ЦитатаСообщение от Ципихович Эндрю Посмотреть сообщение

попытка 2
порядок действий:
pyinstaller должен быть установлен в командной строке (ну естественно и сам pip)
установка: pip install pyinstaller
Python на ПК и все модули, требуемые вашему скрипту должны быть установлены
в командной строке ввести:
cd C:\pythonProject
затем:
pyinstaller —onefile main.py
где C:\pythonProject и main.py — путь к каталогу где лежит файл, который требуется превратить в экзешник и название этого файла, нажимаем Enter
по окончании работы в указанном каталоге появится:

не реклама, не бравада, просто если сам забуду — будет где посмотреть и вспомнить.

Добавлено через 2 часа 8 минут
ну и как говорится аппетит приходит во время еды))
есть ли такое понятие в пайтоне как поместить файл с данными в ресурсы? если да то как это сделать, какой файл возможно поместить в ресурсы и какова должна быть его структура?

Программа не работает после компиляции
Всем привет. Написал маленькую программу для сбора информации о комплектующих ПК (мне это нужно по.

Программа работает только после компиляции
Доброго времени суток. Возникла проблема. Написал программу, базу создал в студии, привязал к.

Программа работает только в ide, после компиляции нет!
Здравствуйте, уважаемые!! Столкнулась с такой проблемой. Написанное мною приложение, работает.

Не запускаются *.exe после компиляции
не запускаются *.exe после компиляции. выдает ошибку: версия этого файла несовместима с.

Изображение exe-шника после компиляции
Я так и не понял, как сделать иконку к exe-шнику после компиляции. Метод в теме "полезные коды для.

Ошибка в .exe после компиляции pyinstaller
На pyton 3.4 установил pyside, чтобы на qt designer сделать прогу с интерфейсом. Все готово, .py.

Пропадает иконка после компиляции в .exe
Привет друзья! Пропадает иконка после компиляции приложения в .exe файл. Подскажите как решить эту.

Источник

Файл python .exe не открывается / не запускается

Я написал файл Python в коде Visual Studio с анакондой в качестве интерпретатора. Я использовал pyinstaller, чтобы превратить файл в exe, но когда я пытаюсь открыть exe, окно cmd на секунду открывается, а затем закрывается. Не знаю, почему он не открывается. Моя программа должна читать и распечатывать определенные данные, запрошенные пользователем из файла HDF5, и делает именно это в коде Visual Studio. Мне действительно просто нужен способ, чтобы его мог запускать кто-то на другом компьютере с не установленным python.

Читайте также:  Htaccess allow php file

Вот весь мой код, который, вероятно, плох, потому что у меня мало опыта работы с Python, но он работает в коде Visual Studio:

import numpy as np import h5py print ("Make sure to move the HDF file to the folder where this program is located.") valid = "valid" #gets the file name and checks if file exists while valid == "valid": filename = input("\nwhat is the name of the HDF file including the .hdf: ") try: with h5py.File(filename,"r") as hdf: path = hdf.get("/Results/Unsteady/Output/Output Blocks/Base Output/Unsteady Time Series/2D Flow Areas/Flow Area") break except IOError: print ("File not found") #opens file with h5py.File(filename,"r") as hdf: #navigates to file location path = hdf.get("/Results/Unsteady/Output/Output Blocks/Base Output/Unsteady Time Series/2D Flow Areas/Flow Area") path_items = list(path.items()) #keeps running until user tells it to stop run = "y" while run == "y" or run == "Y" or run == "yes" or run == "Yes": #user input while valid == "valid": choice = input("\nWhich file would you like to get data from? Depth, Face Shear stress, Face Velocity, or Water Surface: ") choice = choice.lower() if choice == "depth" or choice == "face shear stress" or choice == "face velocity" or choice == "water surface": break else: print ("Invalid") #checks the user input then converts the data set into a numpy array if choice == "depth": dataset = np.array(path.get("Depth")) if choice == "face shear stress": dataset = np.array(path.get("Face Shear Stress")) if choice == "face velocity": dataset = np.array(path.get("Face Velocity")) if choice == "water surface": dataset = np.array(path.get("Water Surface")) #gets the shape/size of the dataset shape = str(dataset.shape) shape = shape.replace("(","") shape = shape.replace(")","") shape = shape.split(",") timeAmount = shape[0] pointAmount = shape[1] timeAmount = int(timeAmount) pointAmount = int(pointAmount) timeAmount -= 1 pointAmount -= 1 print ("\nThis data set has",timeAmount,"time values and",pointAmount,"data values.") #user input while valid == "valid": time = input("\nEnter a single time step: ") try: int(time) break except ValueError: print ("Invalid") time = int(time) while valid == "valid": minR = input("\nEnter the first (smaller) value in a range of cell locations: ") try: int(minR) break except ValueError: print ("Invalid") minR = int(minR) while valid == "valid": maxR = input("\nEnter the second (larger) value in a range of cell locations: ") try: int(maxR) break except ValueError: print ("Invalid") maxR = int(maxR) #calculates all the numbers in the range between the two numbers rangeL = [] while minR != maxR: rangeL.append(minR) minR += 1 rangeL.append(maxR) #prints the value at each point count = 0 for x in range(len(rangeL)): tempN = rangeL[count] tempV = dataset[time,rangeL[count]] print (str(tempN) + "," + str(tempV)) count += 1 #asks the user if they want to get more data run = input("\nWould you like to enter more parameters to get more/different data? (y/n): ") if run == "y" or run == "Y" or run == "yes" or run == "Yes": pass else: print ("Goodbye") break 

Источник

Читайте также:  Включить ошибки php wordpress

Exe файл python не открывается

Всем привет. Написал маленькую программу для сбора информации о комплектующих ПК (мне это нужно по работе). Посредством самого python’а программа работает без каких-либо проблем, но если ее скомпилировать через «pyinstaller -F prog1.py», то получившийся exe-шник уже не запускается. Или запускается, но быстро закрывается. Программа использует модуль WMI, думаю проблема с ним, т.к. любые другие программы отлично работают.

import wmi c = wmi.WMI() MemoryType = < '26': 'DDR4', '21': 'DDR2', '24': 'DDR3', >text = '' for i in c.CIM_Processor(): text = text + i.Name.rstrip() + ', ' + str(i.MaxClockSpeed) + 'MHz' + '\n' for i in c.Win32_BaseBoard(): text = text + i.Product + '\n' for i in c.Win32_PhysicalMemory(): text = text +str(int(i.Capacity)/1073741824) + 'Gb, ' + MemoryType[str(i.SMBIOSMemoryType)] + '\n' for i in c.Win32_PhysicalMemoryArray(): text = text + 'всего слотов: ' + str(i.MemoryDevices) + '\n' for i in c.Win32_DesktopMonitor(): print(i) print(text) a = input()

Во-первых, это не компиляция, просто архивирование. Вы можете разархивировать этот экзешник и увидите там Вашу программу, все библиотеки, интерпретатор питона + некоторая обвязка. Скорость выполнения программы от такой «компиляции» не поменяется или уменьшится. Также, файлы, так «скомпилированные», обычно нормально выполняются только в той же системе, где и проводилась «компиляция».

А вообще, у Вас вообще не должен был получиться экзешник. https://codecamp.ru/blog/python-pyin. g-python-code/.
Правильная команда выглядит немного наоборот: pyinstaller prog1.py -F. Вначале идёт название программы, затем указание, как собирать программу.

qimer, в чем заключается проблема у вас не подскажу. У меня ваша программа отработала и в виде скрипта, и в виде exe-файла. Вы точно берете exe из папки dist?

VeryStupidPerson, соглашусь с тем, что это не компиляция. Но: внутри будет не исходный скрипт с программой, а уже скомпилированный «.pyc»; эта операция не для ускорения, а чтобы на пользовательских ПК не ставить интерпретатор; очень часто параметры запуска можно писать практически в произвольном порядке (using-pyinstaller).

Pyc файлы также исполняет интерпретатор. И py переводится в pyc для ускорения запуска. Если Вы создадите проект, например, в среде spyder, то у Вас автоматически создастся папка с копиями всех программ, кроме основной, но с расширением pyc. И при следующем запуске интерпретатор будет импортировать pyc файлы вместо py.
Интерпретатор исполняет именно pyc файлы, поэтому при запуске тратится довольно много времени (для больших проектов) на то, чтоб он перевёл код в понятный для себя и только для себя.
Pyc файлы и хранят этот, уже переведённый, код. На скорость выполнения не влияет, но на скорость загрузки — довольно ощутимо.
И это и есть плюс питона — код будет работать, при наличие интерпретатора, в любой системе (в идеальном случае, понятно, есть глюки с библиотеками), достаточно просто перенести программу с одного устройства на другое.

Источник

Оцените статью