我需要将“ C:\ temp \ register.xlsx”打开时,使用python的selenium webdriver将其传递到上传窗口,但是由于我是selenium和html的新手,所以我无法正确理解我需要抓取HTML中的哪些项目以及如何正确设置其格式。 我在Windows 10上使用chrome和python 3。
我调查并发现了一些有关html隐藏对象的线索,但是我尝试了没有太多标准的替代方法。
from selenium import webdriver
browser = webdriver.Chrome(executable_path='C:\\Drivers\\chromedriver.exe')
browser.get('https://someinternalsite.int/')
browser.find_element_by_name('txtUsername').send_keys('user')
browser.find_element_by_name('txtPassword').send_keys('pass')
browser.find_element_by_name('cmdLogin').click()
browser.get('https://user@someinternalsite.int/next/adm/exportacion/exportboletines/')
browser.find_element_by_name('TxtFechaDesde.Text')
browser.find_element_by_name('TxtFechaHasta.Text')
file_input = browser.find_element_by_xpath('//*[@id="FileAdjunto_lisearch"]')
browser.execute_script('arguments[0].style = ""; arguments[0].style.display = "block"; arguments[0].style.visibility = "visible";', file_input)
file_input.send_keys("C:\temp\register.xlsx")
这是复制的html元素:
<li id="FileAdjunto_lisearch"><button class="mv-btn-xs mv-btn--rounded mv-btn--outline mv-btn--primary mv-control--file__search mv-media__btn mv-btn" data-action="" id="FileAdjunto_Search_Id_Main_Container" tabindex="-1" title="Cargar" type="button"><i aria-hidden="true" class="mv-icon--search mv-icon "></i></button></li>
但我什至不知道html代码的这一部分是否正确,我必须从那里获取元素。
当时间到了,打开上传窗口的时间,我得到了: “ selenium.common.exceptions.ElementNotInteractableException:消息:元素不可交互”
任何帮助将不胜感激。
谢谢