在Selenium Python中改变元素的显示方式无法工作。

问题描述 投票:0回答:1

我想用Selenium上传一个文件,但首先我需要让输入元素可见。它看起来是这样的。

<input class="tb_sK" type="file">

我试着用JavaScript改变style.display,并加上这段代码

js = "arguments[0].style.display='block'"
driver.execute_script(js, upload_button)

现在输入看起来是这样的,但仍然是不可见的。

<input class="tb_sK" type="file" style="display: block;">

我对html不是很熟悉,但在devtools中,我看到了这个.style.display。输入

Element.style中没有任何内容,而'display'是在.tb_sK中。所以我想我必须改变它。

我该怎么做呢?

javascript python selenium input display
1个回答
1
投票

你可以尝试删除类属性。

driver.execute_script("arguments[0].removeAttribute('class')", upload_button)

这样一来,输入就不会受到你在打印时的CSS规则的影响,也就不会再看不见了。

© www.soinside.com 2019 - 2024. All rights reserved.