【发布时间】:2014-04-02 16:28:24
【问题描述】:
我正在使用 Qt 的 WebKit 类遍历 DOM。请查看以下伪 HTML:
<br>111<a class="node">AAA</a>
<br>222<a class="node">BBB</a>
...
我可以使用findAll() 轻松找到锚点。但是,我还需要在元素(“111”和“222”)之前获取文本。我尝试使用previousSibling(),但当然这给了我<br> 元素,因为“111”和“222”文本不是元素。
我找到了一个访问元素内文本的函数,但我如何访问 在 <br> 和 <a> 元素之间?
【问题讨论】:
-
你能修改这个 HTML 吗?
-
不,我不能修改它。
-
因此,如果您访问父级(不是兄弟级),并遍历其下的所有文本,它会给您...什么?
"111\n222"还是什么? -
使用anchorParent.toPlainText() (我想这就是你的意思)给我所有的父母及其所有后代的文本(111 AAA 222 BBB)。也许我可以以某种方式分析那段文本,但如果有一个更容易分析的 DOM,那就有点荒谬了。
标签: qt dom qtwebkit qwebkit qwebelement