无法从selenium中的元素从外部标记获取文本?

2024-04-19 07:05:52 发布

您现在位置:Python中文网/ 问答频道 /正文

我有以下元素

<td nowrap="nowrap" align="left" colspan="2">
<b>Zone: </b>
"521X 7SW&nbsp;&nbsp;&nbsp;"
</td>

如何获取包含“521X 7SW”的文本?每次我在selenium中尝试.text命令时,它只返回“Zone:”。如果我使用get_attibute(“text”)命令,它将不返回任何内容。在

我已经用这个命令选择了元素

^{pr2}$

文本也不是看不见的。^元素的{a1}


Tags: text文本命令zone元素内容getselenium
2条回答

您要查找的文本与“b”标记无关,它是td标记的text()值。你应该找到td标签文本来获得“521X 7SW”值。在

 driver.find_element_by_xpath("//td[@nowraap='nowrap']/text()");

您可以优化td的xpath,因为我在您的问题中只使用了显示的HTML

这是一个文本节点,而不仅仅是文本。在

您可以这样插入Javascript:

text_node  = driver.find_element_by_xpath("//b[contains(text(),'Zone: ')]")

data = driver.execute_script("return arguments[0].nextSibling.textContent;", text_node)  
print(data)  

文本节点作为arguments[0]传入Javascript

相关问题 更多 >