Here's a drop zone HTML
<dropzone _ngcontent-c80="" accept="image/jpg,image/jpeg,image/png" _nghost-c81="">
<div _ngcontent-c81="" class="content">
<div _ngcontent-c80="" class="drop-image-icon half-margin-bottom" iconid="drop-image" svg-icon="" vb="0 0 64 48" _nghost-c4="">
<svg _ngcontent-c4="" viewBox="0 0 64 48">
<use _ngcontent-c4="" xlink:href="https://core-stg1.teradek.com/app/kovalyovfortests/studio/assets#drop-image">
</use>
</svg>
</div>
<div _ngcontent-c80="" class="primary">Drop an image here</div>
<div _ngcontent-c80="" class="primary half-margin-top half-margin-bottom">— or —</div>
<a _ngcontent-c80="" class="secondary">Select an image from your computer</a>
</div>
</dropzone>
I tried to send the file with
driver.find_element_by_xpath('//*[@iconid="drop-image"]').send_keys('/home/user/pic/3-1.png')
and get traceback:
selenium.common.exceptions.ElementNotInteractableException: Message: element not interactable
How can I send the file into drop zone using .send_keys?
PS It works with
import pyautogui
find_by_xpath('//*[@iconid="drop-image"]').click()
pyautogui.write(/home/user/pic/3-1.png, interval=0.25)
pyautogui.press('return')
Other alternative sendkey
method, you can use Action
class:
element = driver.find_element_by_xpath('...')
action = ActionChains(driver)
action.move_to_element(element).send_keys('/home/user/pic/3-1.png').perform()
Following import:
from selenium.webdriver import ActionChains
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.