项目场景:
操作系统:Win10
Spyder版本:3.3.5 更新后 5.0.0
问题描述:
使用Spyder时,Spyder却打不开出现以下报错:
Traceback (most recent call last):File "C:\ProgramData\Anaconda3\lib\site-packages\qtpy\QtWebEngineWidgets.py", line 22, in from PyQt5.QtWebEngineWidgets import QWebEnginePageImportError: DLL load failed: 找不到指定的模块。During handling of the above exception, another exception occurred:Traceback (most recent call last):File "C:\ProgramData\Anaconda3\Scripts\spyder-script.py", line 10, in sys.exit(main())File "C:\ProgramData\Anaconda3\lib\site-packages\spyder\app\start.py", line 210, in mainfrom spyder.app import mainwindowFile "C:\ProgramData\Anaconda3\lib\site-packages\spyder\app\mainwindow.py", line 60, in from qtpy import QtWebEngineWidgets # analysis:ignoreFile "C:\ProgramData\Anaconda3\lib\site-packages\qtpy\QtWebEngineWidgets.py", line 26, in from PyQt5.QtWebKitWidgets import QWebPage as QWebEnginePageModuleNotFoundError: No module named 'PyQt5.QtWebKitWidgets'
原因分析:
最后有一行显示:No module named 'PyQt5.QtWebKitWidgets'
可能conda中没有安装PyQt5
解决方案:
先安装以下PyQt5
conda install pyqt5
推荐使用pip
安装
pip install pyqt5
从上图可以看到:
ERROR:
1.spyder版本:3.3.5,需要pyqtwebengine,此时该包没有安装。
2.spyder版本:3.3.5,要求pyqt5版本<5.13,但pyqt5版本:5.15.4不适用。
这时Spyder打开后依旧报错:
安装PyQtWebEngine
pip install PyQtWebEngine
从上图可以看到依旧出现了错误:
ERROR:
1.spyder版本:5.0.0,要求pyqt5版本<5.13,但pyqt5版本:5.15.4不适用。
2.spyder版本:5.0.0,要求pyqtwebengine<5.13,此时pyqtwebengine版本:5.14.5不适用。
因此结论:Spyder需要PyQt5和PyQtWebEngine两个包,但也需要这两个包的版本和Spyder版本匹配!
此时两种解决方案:
1、安装对应的包:
pip install pyqt5==5.11.2pip install pyqtwebengine==5.12.1
但是两个包的安装同时也会让spyder版本发生变化导致依旧ERROR
2、卸载所有,重新下载Spyder(推荐)
pip uninstall pyqt5pip uninstall pyqtwebenginepip uninstall spyderpip install spyder
这样新下载的Spyder能同时下载另外两个包并且版本适配