1

Qt 的一些日志输出由日志类别控制(例如 JavaScript 控制台输出 on QWebEnginePage)。

C++ 中的QLoggingCategory可以用于此,但 PyQt5 中没有相同的类。

有什么方法可以控制 PyQt5 中的类别日志记录,或者将它们全部静音?

4

1 回答 1

0

不是一个直接的解决方案,但您可以创建如下内容:

class MyPage (QtWebEngineWidgets.QWebEnginePage):
    def javaScriptConsoleMessage(self, level, message, lineNumber, sourceId):
        #Send the log entry to Python's logging or do whatever you want
        logging.info("level: {}, source: {}, "+
                 "line: {}, message: {}".format(level,
                                                sourceId,
                                               lineNumber,
                                               message))

然后替换QWebEngineView的默认页面:

self.page = MyPage(owner)
self.browser.setPage(self.page)
于 2016-06-19T01:52:51.277 回答