简体   繁体   English

Selenium 多文件上传 + Python

[英]Selenium Multiple File Upload + Python

I am using below code for a multiple image upload:我正在使用以下代码进行多张图片上传:

import selenium
import time
import selenium.common.exceptions
import os
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.common.alert import Alert
from selenium.webdriver.common.action_chains import ActionChains

#provie file path for Chromedriver
chromedriver = "C:/Users/chromedriver_win32/chromedriver"
driver = webdriver.Chrome(chromedriver)
driver.get("https://url.com")

#log in to the website
driver.find_element_by_id('ctrlLogin_UserName').send_keys("xyz.com")
driver.find_element_by_id('ctrlLogin_Password').send_keys("abc@01")
driver.find_element_by_id('ctrlLogin_LoginButton').click()

#give some time for all objects to load
time.sleep(5)
driver.maximize_window()

#click open Reports tab
driver.find_element_by_xpath('full XPath').click()

#navigate to New Reports
driver.switch_to.frame("hostFrame")
driver.find_element_by_xpath('full XPath').click()

#give some time for all Reports to load
time.sleep(5)
driver.switch_to.default_content()

#Open Report folder
time.sleep(5)
driver.switch_to.frame("hostFrame")
driver.find_element_by_xpath('full XPath').click()

time.sleep(5)
driver.execute_script("window.scrollTo(0, 600);")
driver.find_element_by_xpath('full XPath').click()

time.sleep(2)

driver.find_element_by_xpath('full XPath').click()

uploader = driver.find_element_by_xpath('full XPath')
uploader.send_keys("C:/Users/blabla.jpg")

I am getting an error as: raise exception_class(message, screen, stacktrace) selenium.common.exceptions.ElementNotInteractableException: Message: element not interactable (Session info: chrome=87.0.4280.88)我收到错误消息: raise exception_class(message, screen, stacktrace) selenium.common.exceptions.ElementNotInteractableException: Message: element not interactable (Session info: chrome=87.0.4280.88)

I tried adding wait but that also did not work.我尝试添加等待,但这也不起作用。 Can someone share any ideas?有人可以分享任何想法吗?

The element cannot be interacted with either because it is not visible or another element is displaying over it.该元素无法与之交互,因为它不可见或另一个元素正在其上显示。 Double check it is in a state you can interact with it and visible and that you have the correct locator for it.仔细检查它是否在 state 中,您可以与其交互并且可见,并且您有正确的定位器。 try to change尝试改变

uploader.send_keys("C:\\Users\\blabla.jpg")

and:和:

scro=driver.find_element_by_xpath('full XPath')
scro.location_once_scrolled_into_view
scro.click()

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM