На първо място, използвам:
- Windows 10
- Python 3.6.2 (но опитах и с Python 3.5.4)
- pyttsx3 модул
Опитвам се да използвам pyttsx3, но просто не мога да го инициализирам с официалните примери за код.
Моят код (точно като примерите от тук и тук):
import pyttsx3
engine = pyttsx3.init()
engine.say('Just a sample text.')
engine.runAndWait()
И вторият ред ми дава тази грешка:
AttributeError: модулът „pyttsx3“ няма атрибут „init“
Инсталирах го с PIP:
pip install pyttsx3
И се опитах да го поправя, като инсталирах pypiwin32, но все още не работи:
pip install pypiwin32
Когато изпълня следния скрипт:
import pyttsx3
print(dir(pyttsx3))
разбирам това:
['__builtins__', '__cached__', '__doc__', '__file__', '__loader__', '__name__', '__package__', '__spec__', 'pyttsx3']
има това:
drivers (folder)
__pycache__ (folder)
driver.py
engine.py
six.py
voice.py
__init__.py
At:
C:\Program Files\Python36\Lib\site-packages\pyttsx3
И съдържанието на файл __init__.py
(пропуснах коментарите):
from .engine import Engine
import weakref
_activeEngines = weakref.WeakValueDictionary()
def init(driverName=None, debug=False):
try:
eng = _activeEngines[driverName]
except KeyError:
eng = Engine(driverName, debug)
_activeEngines[driverName] = eng
return eng