从控制台上的 PyQt5 浏览器中删除日志
Posted
技术标签:
【中文标题】从控制台上的 PyQt5 浏览器中删除日志【英文标题】:Remove Logs from PyQt5 Browser on Console 【发布时间】:2019-02-25 21:47:40 【问题描述】:我有一个 PyQt5 应用程序Virtual Desktop,它有一个内置浏览器。当我使用浏览器时,我从浏览器收到 JS 错误,类似于 Chrome 将 JS 和 html 错误放入“Web Inspector”的方式。我如何摆脱这些错误。
要复制错误,请下载 Virtual Desktop 并从 PYPI 安装 PyQt。你需要运行main.py
,选择一个QStyle,然后点击浏览器(在电源按钮旁边)。转到任何网站(例如 google)并切换回您的控制台。您会注意到控制台中填充了 JS 错误。
【问题讨论】:
【参考方案1】:我在使用你的项目时没有观察到这个问题,但我之前也遇到过这个问题,解决方法是编写javascriptConsoleMessage()
方法,消除默认行为。
from PyQt5 import QtCore, QtWidgets, QtWebEngineWidgets
class WebEnginePage(QtWebEngineWidgets.QWebEnginePage):
def javaScriptConsoleMessage(self, level, msg, line, sourceID):
pass
if __name__ == '__main__':
import sys
app = QtWidgets.QApplication(sys.argv)
view = QtWebEngineWidgets.QWebEngineView()
page = WebEnginePage(view)
view.setPage(page)
view.load(QtCore.QUrl("https://www.google.com/"))
view.show()
sys.exit(app.exec_())
【讨论】:
我不确定您将如何在我的程序中实现您的解决方案,因为浏览器(以及所有其他应用程序)是QMdiSubWindow
。因此,我的程序与您的程序设计不同。
@DS_SecretStudios 我给你做了 PR,检查你的存储库以上是关于从控制台上的 PyQt5 浏览器中删除日志的主要内容,如果未能解决你的问题,请参考以下文章
如何从 Android 开发者控制台上的应用程序列表中删除应用程序