我想在“ https://www.onlinedoctranslator.com/translationform”上上传一个excel文件,但是出现以下错误
selenium.common.exceptions.ElementNotInteractableException:消息:元素不可交互”
from selenium import webdriver
import time
driver = webdriver.Chrome('D:\Nitin_Data\chrom_driver\chromedriver.exe')
driver.maximize_window()
driver.get('https://www.onlinedoctranslator.com/translationform')
filepath = 'excel file path here'
upload_file = driver.find_element_by_xpath("//div[@class='dz-message
needsclick']")
upload_file.send_keys(filepath)
time.sleep(5)
driver.quit()
答案 0 :(得分:0)
这有点骇人听闻,但我过去曾成功地使用过它。您可以尝试在页面上找到文件input
的元素,然后运行一些Javascript以使其可见,然后将文件路径文本发送到此处。
file_input = driver.find_element_by_xpath("//input[@type='file']")
driver.execute_script("arguments[0].style.display = 'block';", file_input)
file_input.send_keys(filepath)
如果display: block
不起作用,您可以尝试切换可见性:
driver.execute_script("arguments[0].style.visibility= 'visible';", file_input)