Python keyerror 'sapi5' - PullRequest
       16

Python keyerror 'sapi5'

0 голосов
/ 26 мая 2019

Один вопрос такого типа был задан ранее, но он не очень полезен.Я использую версию Python3.6 в ОС Windows 10.Я получаю сообщение об ошибке KeyError: 'sapi5' и во время обработки вышеуказанного исключения произошло другое исключение.Мой код -

import pyttsx3
engine = pyttsx3.init('sapi5')
voices = engine.getProperty('voices')
print(voices)

И ошибка очень большая, но может помочь решить проблему -

Traceback (most recent call last):
  File "C:\Users\utpal\AppData\Roaming\Python\Python36\site-packages\pyttsx3\__init__.py", line 20, in init
    eng = _activeEngines[driverName]
  File "C:\Program Files (x86)\Microsoft Visual Studio\Shared\Python36_64\lib\weakref.py", line 137, in __getitem__
    o = self.data[key]()
KeyError: 'sapi5'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
  File "<input>", line 1, in <module>
  File "C:\Users\utpal\AppData\Roaming\Python\Python36\site-packages\pyttsx3\__init__.py", line 22, in init
    eng = Engine(driverName, debug)
  File "C:\Users\utpal\AppData\Roaming\Python\Python36\site-packages\pyttsx3\engine.py", line 30, in __init__
    self.proxy = driver.DriverProxy(weakref.proxy(self), driverName, debug)
  File "C:\Users\utpal\AppData\Roaming\Python\Python36\site-packages\pyttsx3\driver.py", line 50, in __init__
    self._module = importlib.import_module(name)
  File "C:\Program Files (x86)\Microsoft Visual Studio\Shared\Python36_64\lib\importlib\__init__.py", line 126, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "<frozen importlib._bootstrap>", line 994, in _gcd_import
  File "<frozen importlib._bootstrap>", line 971, in _find_and_load
File "<frozen importlib._bootstrap>", line 955, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 665, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 678, in exec_module
  File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
  File "C:\Users\utpal\AppData\Roaming\Python\Python36\site-packages\pyttsx3\drivers\sapi5.py", line 3, in <module>
    import win32com.client
  File "C:\Program Files\JetBrains\PyCharm Community Edition 2018.3.3\helpers\pydev\_pydev_bundle\pydev_import_hook.py", line 21, in do_import
    module = self._system_import(name, *args, **kwargs)
ModuleNotFoundError: No module named 'win32com'

Что мне делать?

1 Ответ

2 голосов
/ 26 мая 2019

Из Github README :

Если вы получаете такие ошибки, как No module named win32com.client, No module named win32 или No module named win32api, вам потребуется дополнительно установить pypiwin32.

...