我不断收到此错误:
ImportError: cannot import name 'QWebView'
Run Code Online (Sandbox Code Playgroud)
...对于这段代码:
import sys
from PyQt5.QtCore import QUrl
from PyQt5.QtWidgets import QApplication
from PyQt5.QtWebEngineWidgets import QWebPage
Run Code Online (Sandbox Code Playgroud)
-我在运行 High Sierra 10.13.3 的 Mac 上
-我安装了 Python 3.6.4 -
安装了 PyQt5(这样做了几次,包括使用 HomeBrew)
我很确定一切都安装正确,因为当我运行时python3 -m pip install PyQt5它告诉我Requirement already satisfied:
MacBook-Pro-3:~ ericj36$ python3 -m pip install PyQt5
Requirement already satisfied: PyQt5 in /Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages
Requirement already satisfied: sip<4.20,>=4.19.4 in /Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages (from PyQt5)
Run Code Online (Sandbox Code Playgroud)
当我尝试运行我的代码时,我得到的完整错误是:
...line 4, in <module>
from PyQt5.QtWebEngineWidgets import QWebView
ImportError: cannot import name 'QWebView'
Run Code Online (Sandbox Code Playgroud)
那么这里会发生什么呢?我究竟做错了什么?(我是 Python 新手 - 但不是开发。)
任何帮助将不胜感激。
Qt5 有两种不同的 Web 工具包:基于 WebKit 的 QtWebKit 和QtWebEngine基于 Chromium的更新版本。
您的进口似乎混淆了这两者。QWebPageandQWebView是 的一部分QtWebKit,而不是QtWebEngine,其中有QWebEngineView和QWebEnginePage。
所以你可以选择
网络引擎:
from PyQt5.QtWebEngineWidgets import QWebEnginePage
from PyQt5.QtWebEngineWidgets import QWebEngineView
Run Code Online (Sandbox Code Playgroud)网络套件:
from PyQt5.QtWebKitWidgets import QWebPage
from PyQt5.QtWebKitWidgets import QWebView
Run Code Online (Sandbox Code Playgroud)这两者的接口在很大程度上兼容,但并不完全相同。
| 归档时间: |
|
| 查看次数: |
11894 次 |
| 最近记录: |