当前位置:  开发笔记 > 编程语言 > 正文

在QWebView中向控制台打印Javascript异常

如何解决《在QWebView中向控制台打印Javascript异常》经验,为你挑选了2个好方法。

我正在使用PyQt4和QWebView小部件来查看网页,但似乎我的Javascript存在问题.其他浏览器似乎运行正常,所以我想知道是否通过将它们打印到控制台发生任何异常.

我正在使用的代码如下.我需要添加什么来做到这一点?

from PyQt4 import QtGui, QtWebKit
browser = QtWebKit.QWebView()
browser.load(QtCore.QUrl("http://myurl"))
browser.show()

谢谢,安德鲁



1> samplebias..:

创建子类QWebPage并定义方法javaScriptConsoleMessage():

import sys
from PyQt4 import QtCore, QtGui, QtWebKit

class WebPage(QtWebKit.QWebPage):
    def javaScriptConsoleMessage(self, msg, line, source):
        print '%s line %d: %s' % (source, line, msg)

url = 'http://localhost/test.html'
app = QtGui.QApplication([])
browser = QtWebKit.QWebView()
page = WebPage()
browser.setPage(page)
browser.load(QtCore.QUrl(url))
browser.show()
sys.exit(app.exec_())

样本输出:

% python qweb.py
http://localhost/test.html line 9: SyntaxError: Parse error



2> Rafael Olive..:

或者您可以添加DeveloperExtrasEnabled,右键单击QWebView并选择Inspect.

QWebSettings::globalSettings()->setAttribute(QWebSettings::DeveloperExtrasEnabled, true);

推荐阅读
郑谊099_448
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有