【发布时间】:2015-03-11 18:46:02
【问题描述】:
我正在尝试获取页面 head 部分的内容。我使用返回正确树节点的选择器,我可以遍历它并获取标记名/属性,但所有文本似乎都是空的。
对于 html:
<head>
<script>alert("MSG")</script>
</head>
$("head").children()*.text() // all empty
assert $('head script').text() == "" // assert true, so apparently text() is empty.
assert $("head script").@innerHTML == 'alert("MSG")' // finally works
我可以看到driver.pageSource中的文字
我需要指定一些选项来解析头部,还是完全不可能?
编辑:
添加了 html 示例和更多代码解释。显然是@innerHTML works,据我了解,它通过WebDriver .getAttribute("innerHTML"); 方法。
对我来说有点奇怪,为什么 text() 方法对 head 不起作用。所以,感谢@jk47,我设法解决了问题并访问了元素,但是一般来说,问题“为什么我不能像访问元素一样访问 head 的元素的身体”仍然存在。
【问题讨论】: