Найти - Пользователи
Полная версия: Cx_freeze скомпилировал, и выдает ошибку Attributeerror - Python
Начало » Python для новичков » Cx_freeze скомпилировал, и выдает ошибку Attributeerror - Python
1
Chubais
Если запускаю полученный exe через командную строку то выдает.
Attributeerror module pyglet.media has no Attribute ‘Player’
Attributeerror module NoneType has no Attribute ‘Player’
Если просто 2 клика, то вообще на доли секунды появляется командное окно, а затем исчезает.
Подскажите, пожалуйста, в чем дело?
Сам код
 import pyglet
import time
import random
 
# Program for setup audio 
while True:
    x = random.randint(600,3600)
    player = pyglet.media.Player()
    sound = pyglet.media.load('file2.mp3')
    player.queue(sound) 
 
    # keep playing for as long as the app is running (or you tell it to stop):
    player.eos_action = pyglet.media.SourceGroup.loop
 
    player.play()
    time.sleep(x)
    input("Press Enter")
Файл setup.py
 from cx_Freeze import setup, Executable
import pyglet
import time
import random
import sys
 
base=None
 
if sys.platform=='win32':
    base="WIN32GUI"
 
includes = ['pyglet']
includes = ['time']
includes = ['random']
includes = ['sys']
 
setup(
    name = "Alarm",
    version = "0.1",
    description = "Alarm",
    executables = [Executable("Alarm.py")]
)
ошибку выдает при запуске на win7-32x, базовая.
FishHook
Chubais
У вас очевидно учебный проект, зачем вам нужен этот Cx_freeze? Ну вот нафига такие страдания, у вас же кода меньше, чем конфиг Cx_freeze.
Chubais
FishHook
Искал наиболее простой путь создать исполняемый файл для запуска программы на платформе win-XP-32 последнего обновления и выше.
Если я пошел по неправильному пути, буду раз узнать, как это сделать правильней и проще.
doza_and
Chubais
Искал наиболее простой путь создать исполняемый файл
Для этого есть Язык C.
int main(){return 0;}
Если вы пишете на питоне то правильнее и проще как вам указали не делать исполняемого файла.
PEHDOM
Chubais
Искал наиболее простой путь создать исполняемый файл для запуска программы на платформе win-XP-32 последнего обновления и выше.
да с этими сборщиками одни проблемы, если с дефолтными либами оно еще работает, то как только чтото нестардатное - нужно плясать с бубном.
попрбуйте добавить в setup.py
build_exe_options = {"packages": ["pyglet"]}
from cx_Freeze import setup, Executable
.......
а вообще сборка екзешника это крайний случай, что мешает установить пайтон на XP?

PS если вам таки писец как нужно упаковать скрипт в екзешник попробуйте pyInstaller. ИМХО он получше будет чем фризи и гемора с ним поменьше.
Kasta_neda
setup.py
 import sys
from cx_Freeze import setup, Executable
build_exe_options = {"packages": ["os"], "includes": [ "pyglet", "time","random","sys"]}
base = None
if sys.platform == "win32":
    base = "Win32GUI"
setup( name = "guifoo",
version = "0.1",
description = "My GUI application!",
options = {"build_exe": build_exe_options},
executables = [Executable("C:\Python27\Scripts\script.py", base=base)])
Rodegast
> Искал наиболее простой путь создать исполняемый файл для запуска программы на платформе win-XP-32 последнего обновления и выше.

ИХМО самый простой/правильный вариант:
1) Берём Portable Python или что-то вроде того.
2) Устанавливаем его в минимальном варианте и в ручную очищаем его от “шелухи” (tk, idle и прочее)
3) Кладём то что получилось в каталог к нашей программе.
4) Рядом кладём exe файлик который запускает python и передаёт в качестве аргумента нашу программу
5) И как-бы всё работает.
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB