Pyttsx3 modülü ile Pyinstaller hatası

Pyttsx3 modülünü kullanarak yazdığım kodu pyinstaller ile exe yaptım.Sonra çalıştırdım bana bu hatayı verdi.

Traceback (most recent call last):
  File "ZekasızAsistan.py", line 1, in <module>
  File "c:\users\user\appdata\local\programs\python\python36-32\lib\site-packages\PyInstaller\loader\pyimod03_importers.py", line 631, in exec_module
    exec(bytecode, module.__dict__)
  File "ZekasızAsistanKomutlar.py", line 1, in <module>
ModuleNotFoundError: No module named 'pyttsx3'
[14052] Failed to execute script Zekas─▒zAsistan

İnternette biraz araştırdım birşey bulamadım, yardımcı olursanız sevinirim.
Şimdiden teşekkürler.

exe ye dönüştürürken --onefile parametresini kullandınız mı?

Evet yaptım.İnternette pyttsx3 eski bir modül gibi birşey diyordu emin değilim

python hangi surumunu kullaniyorsunuz? ben 3.7 ile bir turlu exe yapamadim hata veriyordu biraz esgi surumleri kullandim sorunsuz calisdi 3.6 gibi

Ben pythonda 3.6 sürümünü kullanıyorum

Pyinstaller’ı nasıl kullandığınızı sorabilir miyim?

Cmd den yönetici olarak girdim sonra dosyayı bulup

pyinstaller --onefile ZekasızAsistan.py

böyle yaptım.Exe ye çevirdi sonra yaptığı dosyadan açmaya çalıştım yukarıdaki hatayı verdi.

Sanırım pyttsx3 ile alakalı bir durum bu. Google’da biraz araştırdım da, sizin gibi bir çok kullanıcı benzer hatalar almış.

Bende bu şeyi gördüm ama ingilizcem yetmediği için hepsini anlayamadım :sweat_smile:

Pyttsx3’ün aşağıdaki sürümünü kullanınca nasıl bir sonuç alıyorsunuz?

import pyttsx
engine = pyttsx.init()
engine.say('Greetings!')
engine.say('How are you today?')
engine.runAndWait()

bu kod python 2 için deilmi?
Yanlış biliyorsam düzeltin lütfen ama pyttsx python 2 pyttsx3 python 3 için değilmi?

Şu dökümana göre pyttsx3 python3 için. Yani yukarıdaki kod normalde Python2 için. Ama paylaştığım github adresinde de şöyle bir ifade var:

This is a Python3 port of pyttsx, which is a cross-platform Python wrapper for text-to-speech synthesis. The original software is available at https://github.com/parente/pyttsx

Bende bunu gördüğüm için şaşırdım ve sordum size.

Yine de Github’daki dosyayı Python3’e yüklemeyi deneyin, yüklenemezse en azından belirsizlik ortadan kalkar.

Şu anda maalesef deneyemeyecegim. Şuan eve dönüyorum oyuzden bilgisayarımı arabada açamıyorum en erken 6 gibi evde olurum.Ama denediğimde ilk size haber vercem :smiley:

Tamam, iyi yolculuklar o zaman. :slight_smile:

1 Beğeni

Doğrusu fazladan bir işlem yoksa benim beklediğim gibi oldu.

Traceback (most recent call last):
  File "C:/Users/User/PycharmProjects/Projeler01/PythonÇalışmalar.py", line 1, in <module>
    import pyttsx
  File "C:\Users\User\PycharmProjects\Projeler01\venv\lib\site-packages\pyttsx\__init__.py", line 18, in <module>
    from engine import Engine
ModuleNotFoundError: No module named 'engine'

Aşağıdaki kod çalışıyor mu?

from .engine import Engine
Traceback (most recent call last):
  File "C:/Users/User/PycharmProjects/Projeler01/PythonÇalışmalar.py", line 1, in <module>
    import pyttsx
  File "C:\Users\User\PycharmProjects\Projeler01\venv\lib\site-packages\pyttsx\__init__.py", line 18, in <module>
    from .engine import Engine
  File "C:\Users\User\PycharmProjects\Projeler01\venv\lib\site-packages\pyttsx\engine.py", line 65
    if (self._debug: traceback.print_exc()):
                   ^
SyntaxError: invalid syntax

hata bu

Ben pyttsx3 kullanabiliyorum sadece exe yapamıyorum.

İlginç, acaba nerede sorun oluşuyor?
Ben de aşağıdaki kodları derlemeye çalıştım:

# -*- coding: utf-8 -*-
import time
try:
    import pyttsx3
    print("Başarılı.")
except:
    print("Başarısız.")
time.sleep(2)

Önce Ubuntu’da Wine, Python 3.4 ve PyInstaller ile derlemeyi denedim. Exe dosyası oluştu. Sonra bu dosyayı başka bir bilgisayara indirdim ve dosyayı çalıştırdığımda ekrana Başarısız yazısı yazdırıldı.

Sonra aynı kodları Windows’da Python 3.6 ve PyInstaller kullanarak derlemeyi denedim. Exe dosyası oluştu, hem dosyayı oluşturduğum bilgisayarda, hem de başka bir bilgisayarda dosyayı çalıştırdığımda her iki ekrana da Başarılı yazısı yazdırıldı.

Ubuntu’da niye öyle bir sonuç aldım henüz bilmiyorum.