更改 Selenium Python 中元素的显示不起作用

Changing display of element in Selenium Python does not work

我想使用 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 不是很熟悉,但是在开发工具中,我看到了这个: input

element.style 中没有任何内容,'display' 在.tb_sK 中。所以我想我必须改变这个。

我该怎么做?

您可以尝试删除 class 属性:

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

这样输入就不会受到您在印刷品中显示的 CSS 规则的影响,因此不会再不可见。