在html页面中,我有以下代码段:
<div class="jupyter-widgets widget-hbox widget-text">
<div class="widget-label" style="display: block;">Walltime:</div>
<input type="text" class="form-control" placeholder="">
</div>
,其中input
元素按预期方式呈现为 input 字段。但是,此输入字段中有一些值。
使用浏览器的检查器,可以选择该元素并在控制台中使用以下表达式来获取该值:
$ 0.value
但是,如何在python-selenium中做到这一点?
当我在名为“ input”的变量中使用input
元素时,我尝试了以下操作:
driver.execute_script("arguments[0].value;", element)
,它不返回该输入框中的值,而是返回None
。如何正确地从“输入”框中检索值?
答案 0 :(得分:4)
您需要返回值
driver.execute_script('return arguments[0].value;', element)
您也可以使用get_attribute()
element.get_attribute('value')
答案 1 :(得分:3)
使用get_attribute
可以获取元素的任何属性!在您的情况下:
element.get_attribute("value")
@Guy评论了文本不是html的一部分,因此请勿使用:
element.text