如何使用 Selenium WebDriver python 访问隐藏文件上传字段

was*_*asd 6 python selenium selenium-webdriver

我有这样的 HTML:

<a id="buttonToUpload" class="btn-pink medium" href="#">
    <span class="icon-arrow-right">upload photo</span>
</a>
<form id="form1" enctype="multipart/form-data">
    <input id="uploadImage" type="file" accept="image/png, image/gif, image/jpeg, image/jpg" style="visibility: hidden">
</form>
Run Code Online (Sandbox Code Playgroud)

按提升系统对话框选择文件,我无法通过 webdriver 访问。我尝试直接使用 send_keys() 但它引发了 ElementNotVisibleException。那么如何在那里上传照片呢?实际代码:

driver = webdriver.Firefox()
driver.get('http://www........')
upload_input = driver.find_element_by_id('uploadImage')
upload_input.send_keys(os.getcwd()+'/image.jpg')
Run Code Online (Sandbox Code Playgroud)

was*_*asd 5

解决了这个:

\n\n
driver.execute_script("document.getElementById(\'uploadImage\'\xe2\x80\x8c\xe2\x80\x8b).style.visibility=\'\xe2\x80\x8c\xe2\x80\x8bvisible\'")\n
Run Code Online (Sandbox Code Playgroud)\n