pyttsx3: OSError 2147221008 尚未调用 CoInitialize
pyttsx3: OSError 2147221008 CoInitialize has not been called
我有一个 Flask 应用程序,它可以获取图像文件,使用 Tesseract OCR 提取文本,然后使用 pyttsx3 将该文本转换为 mp3。它将 .txt 和 mp3 文件保存在同一目录中。
第一次运行正常
然而,运行 它再次没有重新启动应用程序和 pyttsx3 操作失败:
OSError: [WinError -2147221008] CoInitialize has not been called
Traceback (most recent call last)
File "C:\Users\xxxxx\AppData\Local\Programs\Python\Python38\Lib\site-packages\pyttsx3\__init__.py", line 20, in init
eng = _activeEngines[driverName]
File "C:\Users\xxxxx\AppData\Local\Programs\Python\Python38\Lib\weakref.py", line 131, in __getitem__
o = self.data[key]()
注释掉对 pyttsx3 的调用解决了错误 - 现在可以一个接一个地上传多张图片而不会崩溃,所以肯定是 pyttsx3 导致了故障。
似乎循环仍在 运行ning 中,因此它无法处理下一张图像,因为它仍在忙于处理第一张图像。
到目前为止尝试过:
- 使用的 pyttsx3 版本 2.71 - 应用因不同的共同初始化错误而失败
- 使用 32 位 python 解释器 - 没有区别
- 文本使用会话而不是全局变量 - 没有区别
Windows 10 专业版 v1903
尝试过的浏览器:Edge、Chrome、Opera
Python 版本 3.8.4 64 位
pyttsx3 v 2.90
IDE = VS 代码
感谢帮助
原来这是一个特定于机器的错误。仍然不知道是什么原因造成的,但在另一台 Windows 10 台机器和一个 Linux 盒子上,应用程序运行正常,error-free.
我有一个 Flask 应用程序,它可以获取图像文件,使用 Tesseract OCR 提取文本,然后使用 pyttsx3 将该文本转换为 mp3。它将 .txt 和 mp3 文件保存在同一目录中。
第一次运行正常
然而,运行 它再次没有重新启动应用程序和 pyttsx3 操作失败:
OSError: [WinError -2147221008] CoInitialize has not been called
Traceback (most recent call last)
File "C:\Users\xxxxx\AppData\Local\Programs\Python\Python38\Lib\site-packages\pyttsx3\__init__.py", line 20, in init
eng = _activeEngines[driverName]
File "C:\Users\xxxxx\AppData\Local\Programs\Python\Python38\Lib\weakref.py", line 131, in __getitem__
o = self.data[key]()
注释掉对 pyttsx3 的调用解决了错误 - 现在可以一个接一个地上传多张图片而不会崩溃,所以肯定是 pyttsx3 导致了故障。
似乎循环仍在 运行ning 中,因此它无法处理下一张图像,因为它仍在忙于处理第一张图像。
到目前为止尝试过:
- 使用的 pyttsx3 版本 2.71 - 应用因不同的共同初始化错误而失败
- 使用 32 位 python 解释器 - 没有区别
- 文本使用会话而不是全局变量 - 没有区别
Windows 10 专业版 v1903
尝试过的浏览器:Edge、Chrome、Opera Python 版本 3.8.4 64 位
pyttsx3 v 2.90
IDE = VS 代码
感谢帮助
原来这是一个特定于机器的错误。仍然不知道是什么原因造成的,但在另一台 Windows 10 台机器和一个 Linux 盒子上,应用程序运行正常,error-free.