2

如何在 QtWebKit 中访问网页的 DOM?
我在 QtWebKit 中没有看到任何暴露 DOM 的方法......

4

3 回答 3

3

目前,您需要通过 JavaScript 进行 DOM 操作,通过 QVariant QWebFrame::evaluateJavaScript(const QString & scriptSource); 注入

于 2009-07-23T21:00:17.880 回答
1

现在从 Qt 4.4/4.5 开始,我认为没有任何直接的方法,但它即将到来。见http://labs.trolltech.com/blogs/2009/04/07/qwebelement-sees-the-light-do-i-hear-a-booyakasha/

于 2009-07-23T16:42:54.593 回答
0

通过 javascript 方法进行的 DOM 操作非常糟糕。对于任何严重的使用,它很快就会变得很明显,它完全无法使用。进行了一项实验,以使用 pywebkitqt4 为 pyjamas-desktop 创建一个运行时,但它完全失败了。取得了很多成就——例如用 python 编写的事件回调——但它们必须被设置......通过创建一个 javascript 代码片段!这种方法真的很疯狂。每次你想从 python 操作 DOM 模型时,你必须通过像 javascript 这样的垃圾语言?任何认为这是个好主意的人都完全没有头脑。

幸运的是,在未来的某个时候,我将扩展 pythonwebkit 以允许完全访问 DOM 函数:这样做很容易,但我现在没有时间为 qt4 编译 webkit(它使用 gtk 的 webkit 需要 90 分钟)。

于 2010-10-09T18:54:46.783 回答