如何使用Selenium获取WebElement中的不可见文本?
如何获取 selenium 的 webelement 中的不可见文本?
selenium 的 webelement.text 属性仅返回可见文本。有时,我们可能需要获取不可见文本,例如:
browser = webdriver.chrome() browser.get("") answers_list = browser.find_elements(by.class_name, "list-item") print(answers_list[0].text) # webelement.text 总是返回可见文本,对于不可见文本呢?我找了一下,没找到接口。 # 有大兄弟能指教下么?谢谢了。
找不到用于获取不可见文本的标准 selenium 接口。但是,以下方法可以解决这个问题:
使用 execute_script()
可以使用 execute_script() 方法来执行 javascript 代码,直接操作 dom 元素:
text = browser.execute_script("return arguments[0].textcontent;", answers_list[0]) print(text)
使用 get_attribute()
对于某些元素,get_attribute() 方法可以获取包含不可见文本的属性:
text = answers_list[0].get_attribute("innerHTML") print(text)
以上就是如何使用Selenium获取WebElement中的不可见文本?的详细内容,更多请关注其它相关文章!