ImportError: No Module named 'driver' in pyttsx
ImportError: No Module named 'driver' in pyttsx
我正在尝试 运行 Python 3.5.2 中的语音程序并使用 pyttsx 库。但是我遇到了很多问题。第一个是关于引擎。当我 运行 命令 import pyttsx
时,编译器给我如下错误:
ImportError: No module named 'engine'
然后我找到了 this answer。但它也没有用。最终,我现在有另一个 - similar - 错误如下:
D:\Users\orcuny\Desktop\AVA>python ava.py
Traceback (most recent call last):
File "D:\Users\orcuny\AppData\Local\Continuum\Anaconda3\lib\site-packages\pyttsx\__init__.py", line 37, in init
eng = _activeEngines[driverName]
File "D:\Users\orcuny\AppData\Local\Continuum\Anaconda3\lib\weakref.py", line 131, in __getitem__
o = self.data[key]()
KeyError: None
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "ava.py", line 3, in <module>
engine = pyttsx.init()
File "D:\Users\orcuny\AppData\Local\Continuum\Anaconda3\lib\site-packages\pyttsx\__init__.py", line 39, in init
eng = Engine(driverName, debug)
File "D:\Users\orcuny\AppData\Local\Continuum\Anaconda3\lib\site-packages\pyttsx\engine.py", line 45, in __init__
self.proxy = driver.DriverProxy(weakref.proxy(self), driverName, debug)
File "D:\Users\orcuny\AppData\Local\Continuum\Anaconda3\lib\site-packages\pyttsx\driver.py", line 64, in __init__
self._module = __import__(name, globals(), locals(), [driverName])
ImportError: No module named 'drivers'
据我从整个 SO 的答案中得到的,我假设 pyttsx 库是用 Python 2.X.
我的第一个问题是,如何解决上述问题?
第二个问题是,我找不到 pyttsx 库,它写在 Python 3.X。如果有Python3.X?
中写的任何pyttsx库,谁能赐教吗?
提前致谢。
编辑:
将站点包添加到我的 PATH 变量也没有用。
site-packages 没有包含您的 PY_HOME 或 PATH。请打开环境变量并将其添加到系统变量中。
添加类似下面的内容,您也会在文件夹下看到所需的包。
C:\where_your_python_installation\Lib\site-packages
希望对您有所帮助
嗯,问题似乎在下面得到解决post
import pyttsx works in python 2.7, but not in python3
Can anybody enlighten me if there is any pyttsx library that is written in Python 3.X?
是的,请使用以下版本:
https://github.com/jpercent/pyttsx
它是 pyttsx
的 Python3 端口,似乎可以解决您面临的问题并针对 Python 3.X 版本。
例如,您看到的错误 (ImportError: No module named 'drivers'
) 由以下提交解决
https://github.com/jpercent/pyttsx/commit/f035083338f39f7d93b0c610fbef0bb55fc9fc1c
已合并到上述存储库中。
要安装 pyttsx
python 模块,您可以
pip install git+git://github.com/jpercent/pyttsx.git
或
pip install git+https://github.com/jpercent/pyttsx.git
或
git clone https://github.com/jpercent/pyttsx.git
cd pyttsx
sudo python setup.py install
或者如果您使用它们,则在虚拟环境中执行此操作。您可以避免使用 'sudo' 进行安装,这取决于您使用的环境以及您组织包的方式(位置等)。
当然,使用正确的 python (python3) 和 pip (pip3) 作为你的环境。
请删除并清理环境中以前的 pyttsx
包。
另外,您可以访问http://pyttsx.readthedocs.io/en/latest/install.html
有关详细信息。
可以安装
pyttsx3
与 python3 和 python2 兼容,并且据我测试没有错误。
安装:
pip install pyttsx3
在 CMD 运行 中,此命令将消除所有问题,
我刚刚试过了。
pip install -Iv pyttsx3==2.6 -U
我正在尝试 运行 Python 3.5.2 中的语音程序并使用 pyttsx 库。但是我遇到了很多问题。第一个是关于引擎。当我 运行 命令 import pyttsx
时,编译器给我如下错误:
ImportError: No module named 'engine'
然后我找到了 this answer。但它也没有用。最终,我现在有另一个 - similar - 错误如下:
D:\Users\orcuny\Desktop\AVA>python ava.py
Traceback (most recent call last):
File "D:\Users\orcuny\AppData\Local\Continuum\Anaconda3\lib\site-packages\pyttsx\__init__.py", line 37, in init
eng = _activeEngines[driverName]
File "D:\Users\orcuny\AppData\Local\Continuum\Anaconda3\lib\weakref.py", line 131, in __getitem__
o = self.data[key]()
KeyError: None
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "ava.py", line 3, in <module>
engine = pyttsx.init()
File "D:\Users\orcuny\AppData\Local\Continuum\Anaconda3\lib\site-packages\pyttsx\__init__.py", line 39, in init
eng = Engine(driverName, debug)
File "D:\Users\orcuny\AppData\Local\Continuum\Anaconda3\lib\site-packages\pyttsx\engine.py", line 45, in __init__
self.proxy = driver.DriverProxy(weakref.proxy(self), driverName, debug)
File "D:\Users\orcuny\AppData\Local\Continuum\Anaconda3\lib\site-packages\pyttsx\driver.py", line 64, in __init__
self._module = __import__(name, globals(), locals(), [driverName])
ImportError: No module named 'drivers'
据我从整个 SO 的答案中得到的,我假设 pyttsx 库是用 Python 2.X.
我的第一个问题是,如何解决上述问题? 第二个问题是,我找不到 pyttsx 库,它写在 Python 3.X。如果有Python3.X?
中写的任何pyttsx库,谁能赐教吗?提前致谢。
编辑: 将站点包添加到我的 PATH 变量也没有用。
site-packages 没有包含您的 PY_HOME 或 PATH。请打开环境变量并将其添加到系统变量中。
添加类似下面的内容,您也会在文件夹下看到所需的包。
C:\where_your_python_installation\Lib\site-packages
希望对您有所帮助
嗯,问题似乎在下面得到解决post
import pyttsx works in python 2.7, but not in python3
Can anybody enlighten me if there is any pyttsx library that is written in Python 3.X?
是的,请使用以下版本:
https://github.com/jpercent/pyttsx
它是 pyttsx
的 Python3 端口,似乎可以解决您面临的问题并针对 Python 3.X 版本。
例如,您看到的错误 (ImportError: No module named 'drivers'
) 由以下提交解决
https://github.com/jpercent/pyttsx/commit/f035083338f39f7d93b0c610fbef0bb55fc9fc1c
已合并到上述存储库中。
要安装 pyttsx
python 模块,您可以
pip install git+git://github.com/jpercent/pyttsx.git
或
pip install git+https://github.com/jpercent/pyttsx.git
或
git clone https://github.com/jpercent/pyttsx.git
cd pyttsx
sudo python setup.py install
或者如果您使用它们,则在虚拟环境中执行此操作。您可以避免使用 'sudo' 进行安装,这取决于您使用的环境以及您组织包的方式(位置等)。
当然,使用正确的 python (python3) 和 pip (pip3) 作为你的环境。
请删除并清理环境中以前的 pyttsx
包。
另外,您可以访问http://pyttsx.readthedocs.io/en/latest/install.html
有关详细信息。
可以安装
pyttsx3
与 python3 和 python2 兼容,并且据我测试没有错误。
安装:
pip install pyttsx3
在 CMD 运行 中,此命令将消除所有问题, 我刚刚试过了。 pip install -Iv pyttsx3==2.6 -U