我在CentOS和Windows上安装了Anaconda环境,并使用conda安装了PySide2。
问题是,我的项目在CentOS上运行良好,但在Windows上运行服务器时显示“ModuleNotFoundError:找不到名为'PySide2.QtWebKitWidgets'的模块”。
在两个操作系统中,Conda、python、pip、PySide2和PyQt5的版本都相同。
我不知道出了什么问题?
我在CentOS和Windows上安装了Anaconda环境,并使用conda安装了PySide2。
问题是,我的项目在CentOS上运行良好,但在Windows上运行服务器时显示“ModuleNotFoundError:找不到名为'PySide2.QtWebKitWidgets'的模块”。
在两个操作系统中,Conda、python、pip、PySide2和PyQt5的版本都相同。
我不知道出了什么问题?
当我使用pyside2创建一个示例应用程序时,我遇到了同样的问题,错误消息如下:
Traceback (most recent call last): File "browse.py", line 7, in File "/usr/local/lib/python3.7/dist-packages/shiboken2/files.dir/shibokensupport/feature.py", line 146, in _import File "/home/pjm/prj/eis3/gui/browser.py", line 15, in File "/usr/local/lib/python3.7/dist-packages/shiboken2/files.dir/shibokensupport/feature.py", line 146, in _import ModuleNotFoundError: No module named 'PySide2.QtWebKitWidgets'
因此,问题在于设计师或pyside2-uic版本使用旧的QtWebKitWidgets而不是我认为更现代的QtWebEngineView。
实际上,我认为是我的设计师版本产生了以下提取:
<customwidget>
<class>QWebView</class>
<extends>QWidget</extends>
<header>QtWebKitWidgets/QWebView</header>
</customwidget>
browser.py: browser.ui makefile
pyside2-uic $< --output temp.txt
cat temp.txt | sed s/QtWebKitWidgets/QtWebEngineWidgets/g | sed s/QWebView/QWebEngineView/g > $@
我的Designer版本是5.11.3,安装在Debian上,这可能解释了问题所在。简而言之,我认为问题可能出在用于创建UI文件的Designer版本上。