无法使用QWebEngineView渲染网页

问题描述 投票:0回答:4

我一直在尝试将网页渲染到 PyQt5 中的小部件上。 这些是我的设置 PyQt:5.15.4 | PyQtWeb 引擎:5.15.4 | PyQt5-工具 5.15.4.2

我正在尝试呈现一些基本网站,例如 google.com,但我面对的是一个空白页面。

self.google_lib_viewer= QtWebEngineWidgets.QWebEngineView(self.google_lib_tab)
self.google_lib_viewer.setGeometry(QtCore.QRect(0, 0, 656, 411))
self.google_lib_viewer.setObjectName("google_lib_viewer")
self.google_lib_viewer.load(QtCore.QUrl("https://google.com"))

但似乎什么都看不到。

我什至尝试使用 PyQt5 创建一个非常普通的网页,但即使那样也是空白。我尝试卸载我的 PyQt5 包并重新安装它们,但似乎没有任何效果。 有人可以帮我解决这个问题吗?

我已经把代码分离成单独的代码了。请使用它来重现问题。

import os, sys
from PyQt5.QtCore import *
from PyQt5.QtWebEngineWidgets import *
from PyQt5.QtWidgets import QApplication

app = QApplication(sys.argv)
web = QWebEngineView()

web.load(QUrl("http://google.com"))
web.show()

sys.exit(app.exec_())

我还发现网页加载时有一个小的闪烁,然后又消失了。我认为很快关闭可能会加载一些东西

python qt pyqt pyqt5 qwebengineview
4个回答
2
投票

从 Ubuntu 20.04 升级到 22.04 后,我遇到了完全相同的问题。经过数小时的反复试验,这就是我解决它的方法:

首先,我检查了

pip3 list
安装了哪些 PyQt5 包,并删除了其中的每一个(使用
pip3 uninstall ...
,尤其是 PyQt5-Qt5)和所有 PyQtWebEngine 包。然后,我像这样安装了 PyQt5 版本 5.15.6 和 webengine(第二个基本上是根据 Carlos ):

     pip3 install PyQt5-Qt5==5.15.6
     sudo apt-get install -y python3-pyqt5.qtwebengine 

这有效,至少对我而言。希望它能帮助别人......


0
投票

按照 here 的建议尝试在没有沙箱的情况下运行 QApplication。但要注意安全隐患.

app = QApplication(sys.argv + ['--no-sandbox'])

0
投票
PyQt5==5.15.9
PyQt5-Qt5==5.15.2
PyQt5-sip==12.11.1
PyQt5WebEngine==5.15.6
PyQtWebEngine-Qt5==5.15.2.

我在 PyQt5 中遇到了同样的问题,如果已经发生了一周,我终于用尽了 PyQt5 的所有可用知识,一个最终的解决方案是尝试降级 PyQt5 的版本,这个问题可能是由于库中的错误而发生的而不是程序员。


-2
投票

web = QWebEngineView( widget name ) # 你将在这里写下你创建的小部件的名称

© www.soinside.com 2019 - 2024. All rights reserved.