Selenium 4 设置隐藏的 input type=file 元素为可见
在 Selenium 4 中,可以使用 JavaScript 代码修改隐藏的 'input type=file' 元素的样式,使其可见。
以下是一个示例代码:
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
# 创建Chrome浏览器实例
driver = webdriver.Chrome()
# 打开网页
driver.get('https://example.com')
# 等待input元素可见
input_element = WebDriverWait(driver, 10).until(
EC.visibility_of_element_located((By.CSS_SELECTOR, "input[type='file']"))
)
# 使用JavaScript修改input元素的样式
driver.execute_script("arguments[0].style.display = 'block';", input_element)
# 点击input元素
input_element.click()
# 关闭浏览器
driver.quit()
在上述代码中,首先使用 WebDriverWait 等待 'input' 元素可见。然后,使用 execute_script 方法执行 JavaScript 代码来修改 'input' 元素的样式,将其 display 属性设置为 'block',使其可见。最后,通过 click 方法来模拟点击 'input' 元素。
请注意,这种方法只能在 'input' 元素已经存在于 DOM 中的情况下使用。如果 'input' 元素是通过其他操作动态添加到页面中的,那么需要在添加完成后再执行上述代码。
原文地址: http://www.cveoy.top/t/topic/YjJ 著作权归作者所有。请勿转载和采集!